我想更改 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”文本更改为其他内容?
button1 只是一个普通的 Windows 窗体按钮吗?文本只是控件的一个属性。
如果是,请尝试这样做:
button1.Text = "New Text";
将其添加到您的button1_Click 事件中。
private void button1_Click(object sender, EventArgs e)
{
button1.Text = "New Text";
var BildiriminOzellikleri = new ToastContentBuilder()