Ich nochmal...
Möchte einen Button unsichtbar machen wenn HasItems True ist.
Hab schon einige Varianten probiert.
Wenn ich das über Style.Triggers mache funktioniert es. Da kann ich meinen Button aber leider nicht mit einen Event ausstattung.
<ListBox.Template>
<ControlTemplate TargetType="ctrl:FilterView">
<Border BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
CornerRadius="{TemplateBinding Rounding}"
SnapsToDevicePixels="True">
<Grid>
<StackPanel IsItemsHost="True"/>
<Button Name="buttonCreate" Content="Filter Table" Width="75" Height="22" HorizontalAlignment="Left" VerticalAlignment="Top" Click="buttonCreate_Click">
<Button.Triggers>
<Trigger Property="HasItems" Value="False">
<Setter Property="Visibility" Value="Hidden" TargetName="buttonCreate"/>
</Trigger>
</Button.Triggers>
</Button>
</Grid>
</Border>
</ControlTemplate>
</ListBox.Template>
Fehlermeldung:
Bei der Initialisierung von "System.Windows.Controls.Button" wurde eine Ausnahme ausgelöst.
<ListBox.Template>
<ControlTemplate TargetType="ctrl:FilterView">
<Border BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
CornerRadius="{TemplateBinding Rounding}"
SnapsToDevicePixels="True">
<Grid>
<StackPanel IsItemsHost="True"/>
</Grid>
</Border>
</ControlTemplate>
</ListBox.Template>
<ListBox.Triggers>
<Trigger Property="HasItems" Value="False">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ctrl:FilterView">
<Border BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}"
CornerRadius="{TemplateBinding Rounding}"
SnapsToDevicePixels="True">
<Grid>
<Button Name="buttonCreate" Content="Filter Table" Width="75" Height="22" HorizontalAlignment="Left" VerticalAlignment="Top" Click="buttonCreate_Click"/>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</ListBox.Triggers>
Fehlermeldung:
Member "HasItems" ist nicht gültig, da er nicht über einen qualifizierenden Typnamen verfügt.
Hallo,
der Trigger weiß nicht automatisch, dass er in ner ListBox deklariert wird. Wie die Fehlermeldung schon sagtm, musst du das Property komplett mit deklarierenden Typ angeben.
Da kann ich meinen Button aber leider nicht mit einen Event ausstattung.
Verwende lieber gleich Commands.
Baka wa shinanakya naoranai.
Mein XING Profil.