![](/img/trans.png)
[英]C# WPF : how can i access page controls from another page to get textbox.text
[英]C# WPF - How to always get the current text from a textbox?
我在FileWindow.xaml中有一個TextBox:
<TextBox x:Name="textBox" HorizontalAlignment="Left" Height="23" Margin="233,230,0,0" TextWrapping="Wrap" Text="{Binding FileName}" VerticalAlignment="Top" Width="120"/>
在ViewModel.cs中:
public String FileName
{
get { return _model.filename; }
set
{
if (value != _model.filename)
{
_model.filename = value;
OnPropertyChanged();
}
}
}
在Model.cs中:
private String _filename = "example.txt";
public String filename { get { return _filename; } set { _filename = value; } }
我希望每次輸入TextBox時,Model.cs中的_filename都會更新。
TextBox中的默認文本是example.txt,但如果我更改它,Model.cs中的_filename不會更改。 我究竟做錯了什么?
嘗試將綁定的UpdateSourceTrigger
屬性設置為PropertyChanged
:
Text="{Binding FileName, UpdateSourceTrigger=PropertyChanged}"
TextBox沒有立即發送回源。 相反,只有在TextBox上丟失焦點后才更新源。 此行為由名為UpdateSourceTrigger
的綁定上的屬性控制。
它默認為“Default”值,這基本上意味着根據綁定的屬性更新源。
顯然,默認值是UpdateSourceTrigger
的默認值。 其他選項是PropertyChanged
, LostFocus
和Explicit
。
<TextBox Text="{Binding FileName, UpdateSourceTrigger=PropertyChanged}" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.