gpt4 book ai didi

wpf - 将绑定(bind)从一个文本框复制到另一个文本框

转载 作者:行者123 更新时间:2023-12-02 02:10:46 25 4
gpt4 key购买 nike

希望新手提出一个简单的入门问题...

我有一个 TextBox,其 Text 属性绑定(bind)到 ViewModel 和 DependencyProperty。

当我单击文本框时,我希望为第二个文本框(“编辑器”文本框)分配与第一个相同的绑定(bind)。结果是编辑第二个“编辑器”文本框将更新第一个。

最终我希望能够单击任何文本框并在同一个“编辑器”文本框中对其进行编辑。


我的解决方案使用选项 2...谢谢!!:

    private void m_sourceTextBox_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
TextBox sourceTextBox = sender as TextBox;
if (null != sourceTextBox)
{
BindingExpression sourceBindExpression = sourceTextBox.GetBindingExpression(TextBox.TextProperty);

if (sourceBindExpression != null && sourceBindExpression.ParentBinding != null && sourceBindExpression.ParentBinding.Path != null)
m_editorTextBox.SetBinding(TextBox.TextProperty, sourceBindExpression.ParentBinding);
}
}

最佳答案

我可以想到两种方法来做到这一点

首先,在您的 ViewModel 中有一个 SelectedText 属性,您的 EditorTextBox 绑定(bind)到该属性,并在您单击任何其他 时设置该值>文本框。为此,您可能需要类似 AttachedCommandBehavior 的东西因此您可以将 ViewModel 中的命令附加到 TextBox 的 ClickFocus 事件。

我能想到的另一种方法是在代码隐藏中进行。在每个 TextBox 的 ClickFocus 事件中,获取所选 TextBox 的 TextPropertyBindingExpression,并复制绑定(bind)到 EditorTextBox.Text

关于wpf - 将绑定(bind)从一个文本框复制到另一个文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12973931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com