之间的数据我有一个主窗口并且在主窗口的按钮打开ClientWindow。WPF传递克隆的Windows
private void btnMakeClient_Click(object sender, RoutedEventArgs e)
{
ClientWindow window = new ClientWindow();
window.Show();
}
Forexample;如果我3次点击,则会打开3个ClientWindow(chatWindow)。 如何在这些克隆窗口之间传递数据(文本)?我的意思是我写“你好吗?”在一个ClientWindow(chatWindow)中,它也出现在另一个窗口中。
我想,如果我通过从ClientWindow数据(文本)与一个主窗口构造函数和拿回来用ClientWindow构造将解决我的问题,但事实并非如此。这里是我的代码
主窗口:
public partial class MainWindow : Window
{
public string TextContent { get; set; }
public MainWindow()
{
InitializeComponent();
}
public MainWindow(string txtContext)
{
InitializeComponent();
TextContent = txtContext;
ClientWindow window = new ClientWindow(TextContent);
}
private void btnMakeClient_Click(object sender, RoutedEventArgs e)
{
ClientWindow window = new ClientWindow();
window.Show();
}
}
ClientWindow:
public partial class ClientWindow : Window
{
public string Chatcontent { get; set; }
public ClientWindow()
{
InitializeComponent();
}
public ClientWindow(string chatContent)
{
InitializeComponent();
Chatcontent = chatContent;
if (chatContent != string.Empty)
{
this.txtContent.Text += Environment.NewLine + Chatcontent;
txtChat.Clear();
}
}
private void btnSend_Click(object sender, RoutedEventArgs e)
{
MainWindow window = new MainWindow(txtChat.Text);
}
}
@VisualBean在Observer模式对象的情况下将主窗口,可以通知ChildWindows(观察者)如果事情在它的变化。在这个要求中,其中一个观察员将改变状态而不是主题。 – niksofteng