Hallo,
ich muss immer noch kämpfen...
Wenn ich das Databinding so definiere, bekomme ich zwar ein richtiges (deutsches) Datum angezeigt, aber ich musste es in Klammern setzen/anzeigen.
<TextBlock Text= "{Binding Path=P_GEB, ConverterCulture='de-DE', StringFormat='({0:d})'}"/>
Sobald ich die Klammern im StringFormat weglasse, kommt die Fehlermeldung:> Fehlermeldung:
Fehler 1 "" wurde erwartet.
Text= "{Binding Path=P_GEB, ConverterCulture='de-DE', StringFormat={0:d}}"/>
Wie könnte ich es definieren?
Hallo michlG!
Sehr schön! Hatte mich schon auf größeren Aufwand eingestellt.
Danke!
Fred.
Hallo,
wie kann ich denn ein Databinding formatiern?
Also ich habe ein SQL-DataTime-Feld von dem ich nur das Datum anzeigen möchte.
Orginal:
<TextBlock Text= "{Binding Path=P_GEB}"/>
Umgeform dann etwa so:
<TextBlock Text= "string.Format("{0:d}",{Binding Path=P_GEB})"/>
Geht so natürlich wieder nicht.
Hallo edsplash!
An DataBinding hätte ich niemals in Bezug auf Objektreferenzen gedacht. In WPF muss man ganz schön umdenken.
Vielen Dank! 👍
Zu FindAncestor habe ich nur sehr wenig gefunden. Könntest du eine Referenz zu einem Objekt was sich t_Objekt2 nennt (und sich in einem Container5 befindet) als Beispiel mal angeben?
Hallo,
ich möchte für eine Textbox einen Rahmen (und Hintergrundfarbe) definieren.
Dabei bin ich auf das (allgemeine) Problem gestoßen, dass ich in XAML auf ein Propertie eines (übergeordneten) Objektes verweisen möchte. Geht das?
<TextBlock Name="t_Tel" >
<Border BorderThickness="1" BorderBrush="Black" Width=t_Tel.Width.toString() ></Border>
</TextBlock>
So funktioniert es (natürlich) nicht, aber ... ?
Fred.
Hallo Michael,
Danke für deine Antwort. Ich habe gedacht, das das Bild als Ressource zu benutzen nur eine alternative (zur direkten Pfadangabe) ist.
Resourcen habe ich bis jetzt nur über die Projekteigenschaften benutzt und dann über Properties.Resource angesprochen. Was mir auch jetzt noch nicht klar ist, ob wenn ich sie, so wie du das beschrieben hast als Resource deklariere, sie direkt in die exe-Datei einkompiliert werden, oder ob dies nur ein Verweis ist. (Kann ich aber noch ausprobieren...)
Wenn ich weitere Bilder in den bilder-Pfad kopiere, erscheinen sie nicht automatisch im Projektmappen-Explorer (damit ich weiter Bilder als Resourcen deklarieren kann). Ich weis nicht, wie ich das hinbekommen hatte. Übrigens war es mit den deklarieren als Ressource auch noch nicht erledigt (Fehlermeldung blieb bestehen) ich musste erst das gesamte Projekt schließen und wieder öffnen, damit ich VS2008 dazu bewegen konnte, das Bild endlich einmal anzuzeigen. (Warum gibt es nicht einfach eine Schaltfläche (mit drei Punkten) in der ich die gewünschte Grafikdatei auswähle und fertig???
Aber jetzt habe ich ersteinmal einen Ansatz. Nochmals vielen Dank!
Fred.
Hallo
manchmal funktioniert das einfachste nicht!!! :evil:
Ich möchte nur eine Grafikdatei anzeigen!!!
<Image Source="bilder\Telefon.jpg" Name="img_Telefon" ...
Fehlermeldung:
Die Datei "Telefon.jpg" ist nicht Bestandteil des Projekts, oder ihre "Build Action"-Eigenschaft ist nicht auf "Resource" festgelegt.
Versteh ich nicht ?( , im Projektmappen-Explorer wird das Verzeichnis und die Datei genau so! angezeigt.
Ich habe alternativ auch mal die Source per Code zugewiesen
img_Telefon.Source = new BitmapImage(new Uri("bilder\Telefon.jpg", UriKind.Relative));
so kommt zwar keine Kompiler Fehlermeldung aber die Grafik wird nicht angezeigt.
Könnt ihr helfen?
Fred.
Hallo,
ich möchte eine Listbox, deren Spalten in jeder Zeile gleichbreit sind. Bei einer (Größen) Änderung des Windows, soll sich die Spalten-Breite aber propertional der Windows-Breite ändern (Relationen erhalten bleiben). Wie bekomme ich das hin?
Ich habe ein DataTemplate mit einem Grid definiert. Wenn ich die Spaltenbreite als Prozentwert definiere, wird jede Zeile einzeln berechnet. Ich erhalte unterschiedlich breite Spalten pro Zeile. Wenn ich einen festen Wert verwende, wird bei einer Änderung des Windows die Spaltenbreite nicht angepasst. X(
<DataTemplate x:Key="MieterItemTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="40*"/>
<ColumnDefinition Width="40*"/>
<ColumnDefinition Width="20*"/>
</Grid.ColumnDefinitions>
<TextBlock Margin="0,0,2,0" Text="{Binding P_ANREDE}" Grid.Column="0" />
<Border BorderBrush="Black" BorderThickness="1" Grid.Column="0"/>
<TextBlock Margin="2,0,2,0" Text="{Binding P_NAME_A}" Grid.Column="1" />
<Border BorderBrush="Black" BorderThickness="1" Grid.Column="1" />
<TextBlock Margin="2,0,2,0" Text="{Binding P_ANSCHRIFT}" Grid.Column="2" />
<TextBlock Margin="2,0,2,0" Text="{Binding MV}" Grid.Column="3" />
</Grid>
</DataTemplate>
Fred.
Hallo Lector!
Vielen Dank für deine Hilfe.
Das es so aufwendig wird, hätte ich nicht erwartet, aber so funktioniert es:
using (System.IO.MemoryStream ICONStream = new System.IO.MemoryStream())
{
Properties.Resources.interessent.Save(ICONStream);
if (ICONStream != null)
{
BitmapDecoder decoder = IconBitmapDecoder.Create(ICONStream, BitmapCreateOptions.None, BitmapCacheOption.None);
BitmapSource source = decoder.Frames[0];
this.Icon = source;
}
}
Vieleicht bekommst Du es ja auch noch viel kürzer hin ...
Also nochmals Danke!
Fred.
Hallo,
ich möchte einfach für das ICON eines Window (WPF) eine Resource des akt.
Projektes benutzen zB. so:
this.Icon =
((System.Windows.Media.ImageSource)(Properties.Resources.ResourceManager.GetObject("interessent")));
Dabei wird aber folgende Fehlermeldung gesetzt: System.InvalidCastException:
Message="Das Objekt des Typs "System.Drawing.Icon" kann nicht in Typ
"System.Windows.Media.ImageSource" umgewandelt werden."
Wie kann ich denn das Resource-ICON als Form/Window-ICON setzen?
Fred.