gpt4 book ai didi

c# - 从 ControlTemplate By Name 在代码中获取控制权

转载 作者:太空宇宙 更新时间:2023-11-03 19:34:20 25 4
gpt4 key购买 nike

我的 WPF 应用程序中有下一个控件模板。

    <Style TargetType="Label" x:Key="LabelStyle">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Label">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="40"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBox x:Name="MyTextBlock" Text="{TemplateBinding Content}" Height="20" HorizontalAlignment="Left" VerticalAlignment="Top" />
<Label Content="{TemplateBinding Content}" Grid.Column="1" Grid.Row="1"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

文本框“MyTextBlock”在窗口的 C# 代码中是不可见的。如何在代码中访问此文本 block

最佳答案

尝试将您的属性直接绑定(bind)到文本框的可见性

<TextBox Visibility="{Binding IsFieldCodesEnabled, Converter={StaticResource BoolToVis}}" />

其中 BoolToVis 定义为:

<Resouces> 
<loc:BooleanToVisibilityConverter k:key="BoolToVis"/>
</Resources>

关于c# - 从 ControlTemplate By Name 在代码中获取控制权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2816245/

25 4 0