1

我已经在下面清楚地说明了我的问题。

提前谢谢你-->

我有一个公开课:

public class class1
{
 int iVal;
 public int IVal
 {
  get { return iVal; }
  set { iVal=value;  }
 }
}

我将class1在我的 mainWindow.cs 中创建一个类型的对象。

class1 ob = new class1();

在 mainWindow.xaml 文件中,我有一个TextBlock.

我的问题是如何将ob.IVal值绑定到TextBlock使用 XAML 绑定。

<TextBlock Text="{Binding IVal, Mode=OneWay}"/>   
// this binding is not working for me.
4

2 回答 2

1

看起来您只需要DataContext为 XAML 树设置 。在 mainWindow.cs 中,这样写:

public partial class MainWindow : Window
{
    public class1 ob { get; set; }

    public MainWindow()
    {
        ob = new class1();
        InitializeComponent();
        this.DataContext = ob;
    }
}

然后绑定到IVal应该工作。

于 2012-09-04T04:56:27.740 回答
1

可能您错过了设置DataContext属性 - 正如 dbasemen 建议的那样 - 但这仍然不够。

您将绑定模式设置为OneWay意味着通信从源到目标:Class1.IVal -> TextBlock.Text在这种情况下。

但是您必须发送有关 IVal 属性更改的通知,这意味着您必须实现INotifyPropertyChanged事件处理程序并在设置 IVal 属性Propertychanged时引发事件。

你在这里找到如何做到这一点。

于 2012-09-04T07:31:39.637 回答