带有滑块绑定的条件文本框
本文关键字:条件 文本 绑定 | 更新日期: 2023-09-27 18:15:31
我有三个文本框和一个滑动条来改变它们的文本属性。我要做的是绑定滑块的值属性与文本文本框属性,但在一个特定的方式。当一个文本框被激活(聚焦)时,我需要滑块来改变它的文本属性。而且只有这一个。到目前为止,我已经绑定了它,但是当我移动滑块时,所有的文本框都会更新。
任何想法?我正在阅读有关转换器,但我不知道如何在我的程序中实现它。
http://forums.create.msdn.com/forums/t/95548.aspx在这里你有我的滑块和文本块的代码。
当文本框接收到焦点时,如何简单地更改活动绑定:
背后的代码:
private Binding _activeBinding;
private TextBox _activeTextbox;
private TextBox ActiveTextBox
{
get { return _activeTextbox; }
set
{
// Check if a binding exists, initialize if one does not
if (_activeBinding == null)
{
_activeBinding = new Binding("Value");
_activeBinding.Source = this.sld;
}
if (_activeTextbox != null)
{
// Clear the binding
_activeTextbox.ClearValue(TextBox.TextProperty);
}
_activeTextbox = value;
if (_activeTextbox != null)
{
// Set the new binding
_activeTextbox.SetBinding(TextBox.TextProperty, _activeBinding);
}
}
}
private void TextBox_GotFocus(object sender, RoutedEventArgs e)
{
this.ActiveTextBox = sender as TextBox;
}
XAML:
<Grid>
<StackPanel>
<TextBox GotFocus="TextBox_GotFocus">1</TextBox>
<TextBox GotFocus="TextBox_GotFocus">2</TextBox>
<TextBox GotFocus="TextBox_GotFocus">3</TextBox>
<Slider x:Name="sld"></Slider>
</StackPanel>
</Grid>