WPF显示包含var内容的对话框文本框

本文关键字:对话框 文本 显示 包含 var WPF | 更新日期: 2023-09-27 18:30:03

我尝试完成以下操作:

一个WPF应用程序,我有多个按钮,您可以在其中设置通知消息。根据按钮的不同,您可以设置不同的消息。

我所做的,是在消息按钮上我已经把这个代码:

private void button1_Click(object sender, RoutedEventArgs e)
 {
    CounterMessage msgOne = new CounterMessage();
    msgOne.ShowDialog();
 }

这将打开一个新的WPF窗口,这里只有一个文本框和一个退出按钮。在该消息窗口中退出时,它将把消息保存到一个参数中。

但诀窍就在这里。我想将此消息窗口用于多个通知,如果应用程序中的字符串中已经有任何文本内容,它将在文本框中显示任何文本内容。

例如:在主应用程序中,我有按钮A和B来设置通知。我点击按钮A,弹出显示对话框,文本框中已经有"你点击了按钮A"如果是按钮B被点击,它应该显示"你点击了按钮B"

所以我应该用ShowDialog发送一些额外的信息,这样我就可以为每个信息使用消息窗口。有人能帮我一下吗?

我必须说,我觉得很难体面地描述我想要什么,所以我希望我能把自己说得足够清楚。

编辑因此,我想要的是将字符串参数(确切地说:Properties.Settings.Default.XXX)的内容显示到Countermessage窗口

WPF显示包含var内容的对话框文本框

中的文本框中

我不完全确定你在问什么,但听起来你想要这样的东西。我假设CounterMessage是一个窗口,并且有一些绑定机制或属性来显示消息

public class CounterMessage : Window
{
    public CounterMessage(string message)
    {
        this.Message = message;
    }
    public string Message
    {
        get;
        set;
    }
}

然后,您的按钮事件将类似于:

private void button1_Click(object sender, RoutedEventArgs e)
{
     Button btn = sender as Button;
     CounterMessage msgOne = new CounterMessage(btn.Text);
     msgOne.ShowDialog();      
}

重点是,您不向ShowDialog方法发送内容,而是向作为对话框本身的类发送内容。我还假设对话框所做的不仅仅是显示消息,否则,您将只使用MessageBox.Show(....)

        Button btn = (Button)sender;
        Debug.WriteLine(btn.Name);