他のクラスのtextBox binding logContent。 MainWindowの変数logContentの値をすべて変更すると正常に動作します。しかし、Test.csの変数logContentの値を変更すると(ボタンをクリックしたとき)、それは機能しません。バインディングは別のクラスでは機能しません
MainWindow.cs
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
textBox.DataContext = Log.Instance;
Log.Instance.logContent += "aaa" + Environment.NewLine; //this working
}
private void button_Click(object sender, RoutedEventArgs e)
{
Test.Instance.Volaj();
}
}
Log.cs
class Log
{
public string logContent { get; set; }
private static Log instance;
public static Log Instance
{
get
{
if (instance == null)
{
instance = new Log();
}
return instance;
}
}
}
Test.cs
class Test
{
private static Test instance;
public static Test Instance
{
get
{
if (instance == null)
{
instance = new Test();
}
return instance;
}
}
public void Volaj()
{
Log.Instance.logContent += "bbb" + Environment.NewLine; //not working
}
}
、テキストボックス(TextBox)コントロールのXAML
<TextBox
x:Name="textBox"
HorizontalAlignment="Left"
Height="154"
Margin="10,155,0,0"
TextWrapping="Wrap"
Text="{Binding logContent}"
VerticalAlignment="Top"
Width="497"/>
ありがとうございます。私はそのコードを理解することにほとんど問題がありません。しかし、それは働いています。どうもありがとうございました :) –