gpt4 book ai didi

c# - 编辑时获取文本框内容

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

我想制作一种搜索文本框,当用户向文本框输入一些文本时,它将搜索他,因此我想知道文本框的内容,现在我有:

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:cmd="http://www.galasoft.ch/mvvmlight"
...

<TextBox Text="{Binding Search}" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="KeyDown">
<cmd:EventToCommand Command="{Binding SearchCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</TextBox>

在 View 模型中:

public ICommand SearchCommand { get; private set; }
public MyViewModel()
{
SearchCommand = new RelayCommand(SearchMethod);
}

void SearchMethod()
{
if(Search==null)
MessageBox.Show("Search text is null");
}
string search;
public string Search
{
get { return search; }
set
{
Set(() => Search, ref search, value);
RaisePropertyChanged("Search");
}
}

但每次我在文本框中输入一些文本时,它都会显示消息:Search text is null

最佳答案

默认情况下,当 TextBox 失去焦点 时会计算绑定(bind)。只要按下一个键,您的事件就会被触发。

要更改此行为,您可以在绑定(bind)中设置 UpdateSourceTrigger:

<TextBox Text="{Binding Search, UpdateSourceTrigger=PropertyChanged}" />

关于c# - 编辑时获取文本框内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55334972/

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