如何更改单击按钮的内容(C# WinForms Toast 通知)?

问题描述 投票:0回答:1

我想更改 C# WinForms Toast 通知中单击按钮的内容。

这是我的代码:

    private void ButtonAction(ToastNotification sender, object args)
    {
        ToastActivatedEventArgs taeaTıklananDüğme = args as ToastActivatedEventArgs;

        switch(taeaTıklananDüğme.Arguments)
        {
            case "Gates":

                MessageBox.Show("Button has been clicked!");

                break;

        }
    }

    private void button1_Click(object sender, EventArgs e)
    {
        var BildiriminOzellikleri = new ToastContentBuilder()
                //.AddArgument("action", "viewConversation")
                //.AddArgument("conversationId", 9813)
                .AddAppLogoOverride(new Uri("C:\\Users\\StackOverFlow\\Desktop\\EkranResmi_07112024105204.png")) // Bildirimin sol üst köşesinde görünecek olan logo
                .AddButton(new ToastButton("Bill", "Gates")
                    .SetContent("MyButton")
                )
                .AddInlineImage(new Uri("D:\\İndirilenler\\Images\\d033c77c3960090e00c0d4aa9408ef45.jpeg")) // Yazıların altında görünecek olan resim
                .AddInputTextBox("tbGosterilecekMesajiYazmaKutusu", placeHolderContent: "Please enter a text here.")
                .AddText("Hello World!") // İlk "AddText" fonksiyonu kalın harflerle başlık yazmaya yazar
                .AddText("This is a text.") // Diğer "AddText" fonksiyonu ise başlığın altına açıklama, metin vs. yazılmasını sağlar
                .AddText("This is an another text.")
                .AddVisualChild(new AdaptiveProgressBar()
                {
                    Status = new BindableString("pbProgressBarStatus"),
                    Title = new BindableString("pbProgressBarTitle"),
                    Value = new BindableProgressBarValue("pbProgressBarValue"),
                    ValueStringOverride = new BindableString("pbProgressBarValueString")
                }
                )
                .SetToastDuration(ToastDuration.Long)
                .GetToastContent();

        var Bildirim = new ToastNotification(BildiriminOzellikleri.GetXml());

        Bildirim.Activated += ButtonAction; 

        Bildirim.Group = "NotificationGroup";
        Bildirim.Tag = "NotificationTag";

        Bildirim.Data = new NotificationData();
        Bildirim.Data.Values["pbProgressBarStatus"] = "Downloading...";
        Bildirim.Data.Values["pbProgressBarTitle"] = "StackOverFlow.rar";
        Bildirim.Data.Values["pbProgressBarValue"] = "0.1";
        Bildirim.Data.Values["pbProgressBarValueString"] = "1%";

        ToastNotificationManager.CreateToastNotifier("cagatay").Show(Bildirim);
}

这是我的通知的屏幕截图:

https://i.sstatic.net/pB8dCE7f.png

单击按钮时如何将“MyButton”文本更改为其他内容?

c# winforms notifications .net-8.0 toast
1个回答
0
投票

button1 只是一个普通的 Windows 窗体按钮吗?文本只是控件的一个属性。

如果是,请尝试这样做:

button1.Text = "New Text";

将其添加到您的button1_Click 事件中。

 private void button1_Click(object sender, EventArgs e)
    {
        button1.Text = "New Text";
        var BildiriminOzellikleri = new ToastContentBuilder()
© www.soinside.com 2019 - 2024. All rights reserved.