Wpf 如何在XAML中使按钮保持禁用连接到Textblock?
我有一个Wpf 如何在XAML中使按钮保持禁用连接到Textblock?,wpf,xaml,Wpf,Xaml,我有一个文本框,我想让它控制一个按钮。 只要文本框中没有写入任何内容,按钮将被禁用。您必须使用数据绑定和转换器 <TextBlock x:Name="textBlock" /> <Button IsEnabled="{Binding ElementName=textBlock, Path=Text, Converter={StaticResource TextToBoolConverter}}" /> 这会出现在您的页面中: <Page.Resources>
文本框
,我想让它控制一个按钮
。
只要
文本框中没有写入任何内容,
按钮将被禁用。您必须使用数据绑定和转换器
<TextBlock x:Name="textBlock" />
<Button IsEnabled="{Binding ElementName=textBlock, Path=Text, Converter={StaticResource TextToBoolConverter}}" />
这会出现在您的页面中:
<Page.Resources>
<local:TextToBoolConverter x:Name="TextToBoolConverter" />
</Page.Resources>
您可以使用
样式DataTrigger
在XAML
中完成这一切
<TextBlock x:Name="myTextBlock" />
<Button>
<Button.Style>
<Style TargetType="Button">
<Setter Property="IsEnabled" Value="True"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Text.Length, ElementName=myTextBlock}" Value="0">
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
</Style.Troggers>
</Style>
</Button.Style>
</Button>
<TextBlock x:Name="myTextBlock" />
<Button>
<Button.Style>
<Style TargetType="Button">
<Setter Property="IsEnabled" Value="True"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Text.Length, ElementName=myTextBlock}" Value="0">
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
</Style.Troggers>
</Style>
</Button.Style>
</Button>