我有两个文本框,第一个我已经绑定到tabControl的Item的标题。 我在后面的代码中做到了。
问题是绑定仅在第一次成功。
XAML:
<StackPanel>
<TabControl x:Name="tabcontrol">
<TabControl.Items>
<TabItem>
</TabItem>
</TabControl.Items>
</TabControl>
<TextBox Text="5" x:Name="txtbox"></TextBox>
<TextBox Text="dsfdf"></TextBox>
</StackPanel>
代码背后:
public partial class Window4 : Window
{
public Window4()
{
InitializeComponent();
var b = new Binding { Mode = BindingMode.OneWay, Source = txtbox.Text };
((TabItem)tabcontrol.Items[0]).SetBinding(HeaderedContentControl.HeaderProperty, b);
}
}
答案 0 :(得分:0)
将Source
更改为TextBox
,并将Path
设置为Text
:
var b = new Binding { Mode = BindingMode.OneWay, Source = txtbox, Path = "Text" };
((TabItem)tabcontrol.Items[0]).SetBinding(HeaderedContentControl.HeaderProperty, b);
否则,您已将源设置为当前值txtbox.Text
,并且不会对其进行任何更改,因为源(字符串)不支持更改通知。