1

私の問題を以下に明確に述べました。

よろしくお願いします -->

私はパブリッククラスを持っています:

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

class1mainWindow.cs 内に型のオブジェクトを作成します。

class1 ob = new class1();

mainWindow.xaml ファイルには、TextBlock.

私の質問は、XAML バインディングを使用してob.IVal値をバインドする方法です。TextBlock

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

2 に答える 2

1

おそらくDataContext、dbasemenが提案したように、プロパティを設定できなかったのでしょうが、それでも十分ではありません。

バインディングモードを設定します。OneWayこれは、通信がソースからターゲットに送信されることを意味しClass1.IVal -> TextBlock.Textます。この場合は。

ただし、IValプロパティの変更に関する通知を送信する必要があります。つまり、INotifyPropertyChangedイベントハンドラーを実装しPropertychanged、IValプロップが設定されたときにイベントを発生させる必要があります。

あなたはここでそれを行う方法を見つけます。

于 2012-09-04T07:31:39.637 に答える
1

DataContextXAML ツリーにを設定するだけでよいようです。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 に答える