Silverlight,用户控件的模板绑定路径
我有一个MainPage.xaml和一个TextBox(Binding TextBoxText)以及一些嵌套的UserControls,它们都有一个TextBox和一个TemplateBinding/Binding(4个TextBox)。Silverlight,用户控件的模板绑定路径,silverlight,binding,dependency-properties,templatebinding,Silverlight,Binding,Dependency Properties,Templatebinding,我有一个MainPage.xaml和一个TextBox(Binding TextBoxText)以及一些嵌套的UserControls,它们都有一个TextBox和一个TemplateBinding/Binding(4个TextBox)。 当我在某个地方更改文本时,我希望每个框中都有相同的文本 解决方案: 如何同步所有文本 谢谢 MainPage.xaml(TextBoxText是我喜欢在任何地方显示的一个) Generic.xaml: <Style TargetType="local
当我在某个地方更改文本时,我希望每个框中都有相同的文本 解决方案: 如何同步所有文本 谢谢 MainPage.xaml(TextBoxText是我喜欢在任何地方显示的一个)
Generic.xaml:
<Style TargetType="local:MyButtonControl">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:MyButtonControl">
<StackPanel>
<sdk:Label Content="inner control test"/>
<sdk:Label Content="TemplateBinding TextBoxText of MyButtonControl"/>
<TextBox Text="{TemplateBinding TextBoxText}"/>
<Button Content="{TemplateBinding Button3Caption}" Visibility="{TemplateBinding Button3Visibility}" x:Name="Button3"/>
<local:CountDisplayControl x:Name="Control1" TextBoxText="{TemplateBinding TextBoxText}" Visibility="{TemplateBinding VisibilityText1}" Count="{TemplateBinding Count}" DisplayText="{TemplateBinding DisplayText1}"/>
<local:CountDisplayControl2 x:Name="Control2" TextBoxText="{TemplateBinding TextBoxText}" Visibility="{TemplateBinding VisibilityText2}" Count="{TemplateBinding Count}" DisplayText="{TemplateBinding DisplayText2}"/>
<local:CountDisplayUserControl TextBoxText="{TemplateBinding TextBoxText}"/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="local:CountDisplayControl">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:CountDisplayControl">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<StackPanel>
<sdk:Label Content="Control1"/>
<sdk:Label Content="{TemplateBinding Count}"/>
<sdk:Label x:Name="labelText" Content="{TemplateBinding Text}"/>
<sdk:Label Content="TemplateBinding TextBoxText of CountDisplayControl"/>
<TextBox Text="{TemplateBinding TextBoxText}"/>
</StackPanel>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="local:CountDisplayControl2">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:CountDisplayControl2">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<StackPanel>
<sdk:Label Content="Control2"/>
<sdk:Label Content="{TemplateBinding Count}"/>
<sdk:Label x:Name="labelText" Content="{TemplateBinding Text}"/>
<sdk:Label Content="TemplateBinding TextBoxText of CountDisplayControl2"/>
<TextBox Text="{TemplateBinding TextBoxText}"/>
</StackPanel>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
尝试将
绑定
模式
设置为双向绑定:
<myContDll:DefaultContainerTemplate Caption="NewCaption">
<StackPanel x:Name="myStackPanel">
<sdk:Label Content="Binding TextBoxText of MainPage"/>
<TextBox Text="{Binding TextBoxText, Mode=TwoWay}"/>
<myDll:MyButtonControl x:Name="ButtonControl" Count="44"
Button3Caption="NewButton3"
Button3Visibility="Visible"
DisplayText="Form2Text2"
TextBoxText="{Binding TextBoxText, Mode=TwoWay}"/>
</StackPanel>
</myContDll:DefaultContainerTemplate>
嗨!谢谢我尝试了这个并更改了(/上传)我的解决方案。不幸的是它不起作用。。。我想,我需要源定义。。。但是我的考试没考上。。。
<myContDll:DefaultContainerTemplate Caption="NewCaption">
<StackPanel x:Name="myStackPanel">
<sdk:Label Content="Binding TextBoxText of MainPage"/>
<TextBox Text="{Binding TextBoxText, Mode=TwoWay}"/>
<myDll:MyButtonControl x:Name="ButtonControl" Count="44"
Button3Caption="NewButton3"
Button3Visibility="Visible"
DisplayText="Form2Text2"
TextBoxText="{Binding TextBoxText, Mode=TwoWay}"/>
</StackPanel>
</myContDll:DefaultContainerTemplate>