{ "title": "ID", "data": "ObjID", "className": "dt-center" },
{ "title": "Name", "data": "ObjName", "className": "dt-center" }
我正在尝试将ToBarTextBox上的文本绑定到我的类ChatPage上的名为ToBarText的属性。我该怎么做?
感谢。
答案 0 :(得分:0)
从xaml中删除Source属性。 您可以选择添加FallbackValue
<TextBox x:Name="ToBarTextBox" Height="22.6666666666667" Margin="0" TextWrapping="Wrap" Text="{Binding Path=ToBarText, FallbackValue=ToBarText}" VerticalAlignment="Top" Width="120"/>
在后面的代码中,您需要设置DataContext(它负责选择绑定的数据源)。在您当前的设置中,您似乎正在使用单个类来处理GUI并提供数据。在这种情况下,请使用:
public ChatPage()
{
// constructor code
this.DataContext = this;
}
您还需要设置数据源以实现INotifyPropertyChanged
:
internal class ChatPage : INotifyPropertyChanged
{
#region INotifyPropertyChanged Members
public event PropertyChangedEventHandler PropertyChanged;
protected void NotifyPropertyChanged([CallerMemberName] string propertyName = "")
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
#endregion
// ...
话虽如此,我建议学习一下Model-View-ViewModel模式,它有助于将GUI代码与数据源分开。搜索mvvm in wpf