Herkese merhaba. Bugün C# ve VB.NET'de nasıl TaskDialog kullanacağımızı anlatacağım. İnşAllah ilginizi çeker. Hemen başlayalım.
TaskDialog Nedir?
TaskDialog, Windows API CodePack adı verilen bir eklenti ile gelen bir özelliktir. TaskDialog kullanarak daha modern mesaj kutuları yapabilirsiniz.
<
Windows API CodePack'i indirelim. VS'nin yeni sürümlerinde NuGet ile yükleyebilirsiniz. Ben DLL dosyasını paylaşacağım.
İndir VirusTotal
--- VB.NET ---
1. Projeyi açtığımızda VS'nin sağ tarafındaki "References"'e sağ tıklayıp "Add Reference" tıklıyoruz. Ardından Browse kısmına gidip indirdiğimiz DLL'yi seçiyoruz.
2. Uygulamamızın en üstüne
ekliyoruz.
TaskDialog'un bir sürü özelliği var ben bildiklerimi anlatacağım:
TASKDIALOG TEMELLERİ:
Bu kod ile bir progressbar ekleyebilirsiniz.
Alt yazıya ikon ekleme kodu:
Özel Düğme Ekleme: (Standart düğmelerle özel düğmeler aynı anda kullanılamaz.)
Link Tuş Ekleme (Yukarıdaki 2. fotoğrafdaki tuşlar, link tuşlar özel düğmelerle beraber kullanılamaz.):
TaskDialog'u kapatma kodu:
VB.NET için bu kadar. Şimdi C#'a geçeceğiz.
-- C# --
Aynı şekilde DLL'yi ekledikten sonra en üste:
--kodunu ekliyoruz.
KODLAR:
TaskDialog'u kapatma kodu:
C#'da bu şekilde yapılıyor. İsterseniz link düğme ekleyebilirsiniz ben onu göstermedim. Aynı DLL'yi eklemelisiniz. TaskDialog ile C# ve VB.NET projenizi daha modern bir görünüme kavuşturabilirsiniz. TaskDialog hakkında bir sorunuz olursa söyleyin yardımcı olmaya çalışırım. İnşAllah size yeni şeyler öğretebilmişimdir.
TaskDialog Nedir?
TaskDialog, Windows API CodePack adı verilen bir eklenti ile gelen bir özelliktir. TaskDialog kullanarak daha modern mesaj kutuları yapabilirsiniz.
<
Windows API CodePack'i indirelim. VS'nin yeni sürümlerinde NuGet ile yükleyebilirsiniz. Ben DLL dosyasını paylaşacağım.
İndir VirusTotal
--- VB.NET ---
1. Projeyi açtığımızda VS'nin sağ tarafındaki "References"'e sağ tıklayıp "Add Reference" tıklıyoruz. Ardından Browse kısmına gidip indirdiğimiz DLL'yi seçiyoruz.
2. Uygulamamızın en üstüne
Kod:
Imports Microsoft.WindowsAPICodePack.Dialogs
TaskDialog'un bir sürü özelliği var ben bildiklerimi anlatacağım:
TASKDIALOG TEMELLERİ:
Kod:
Imports Microsoft.WindowsAPICodePack.Dialogs
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim taskdialog As New TaskDialog() 'Yeni taskdialog oluştur.
taskdialog.Icon = TaskDialogStandardIcon.Shield 'İkonu kalkan olarak ayarla.
taskdialog.InstructionText = "TurkHackTeam" 'Yönerge.
taskdialog.Text = "Basit bir TaskDialog örneği." 'Yazı.
taskdialog.FooterText = "Örnek yazı." 'Aşağıya yazı ekle.
taskdialog.Caption = "DarkEmir" 'Başlık.
taskdialog.DetailsExpandedText = "Detaylar." 'Detayları göstere basınca çıkan yazılar.
taskdialog.DetailsExpandedLabel = "Detayları görüyorsunuz." 'Detayları göstere basınca tuşun yazısı.
taskdialog.DetailsCollapsedLabel = "Detayları görmek için tıklayınız." 'Detayları göster tuşunun yazısı.
taskdialog.Cancelable = True 'Çarpı tuşunu göster.
taskdialog.StandardButtons = TaskDialogStandardButtons.No + TaskDialogStandardButtons.Yes 'Evet - Hayır düğmeleri ekle.
AddHandler taskdialog.Opened, AddressOf TaskDialog_Opened 'İkonun gözükmesi için eklemeliyiz.
If taskdialog.Show() = TaskDialogResult.Yes Then 'TaskDialog'u göster ve düğmelere basınca ne olduğunu belirle.
MsgBox("Evet tuşuna bastınız.")
Else
MsgBox("Hayır tuşuna bastınız.")
End If
End Sub
Private Sub TaskDialog_Opened(ByVal sender As Object, ByVal e As EventArgs)
Dim taskDialog As TaskDialog = TryCast(sender, TaskDialog)
If taskDialog IsNot Nothing Then
taskDialog.Icon = taskDialog.Icon
taskDialog.FooterIcon = taskDialog.FooterIcon
taskDialog.InstructionText = taskDialog.InstructionText
End If
End Sub
End Class
Bu kod ile bir progressbar ekleyebilirsiniz.
Kod:
Dim progressBar As New TaskDialogProgressBar
taskdialog.ProgressBar = progressBar
Alt yazıya ikon ekleme kodu:
Kod:
taskdialog.FooterIcon = TaskDialogStandardIcon.Error
Özel Düğme Ekleme: (Standart düğmelerle özel düğmeler aynı anda kullanılamaz.)
Kod:
Dim özeldüğme1 As New TaskDialogButton("isim", "YAZI")
Dim özeldüğme2 As New TaskDialogButton("isim", "YAZI")
AddHandler özeldüğme1.Click, AddressOf özeldüğme1_Click
AddHandler özeldüğme2.Click, AddressOf özeldüğme2_Click
taskdialog.Controls.Add(özeldüğme1)
taskdialog.Controls.Add(özeldüğme2)
Private Sub özeldüğme1_Click(ByVal sender As Object, ByVal e As EventArgs)
'düğme 1'e tıklanınca olacaklar.
End Sub
Private Sub özeldüğme2_Click(ByVal sender As Object, ByVal e As EventArgs)
'düğme 2'ye tıklanınca olacaklar.
End Sub
Link Tuş Ekleme (Yukarıdaki 2. fotoğrafdaki tuşlar, link tuşlar özel düğmelerle beraber kullanılamaz.):
Kod:
Dim commandLink1 As New TaskDialogCommandLink("isim", "Düğme Yazısı", "Düğme Alt Yazısı")
Dim commandLink2 As New TaskDialogCommandLink("isim1", "Düğme Yazısı", "Düğme Alt Yazısı")
taskdialog.Controls.Add(commandLink1)
taskdialog.Controls.Add(commandLink2)
AddHandler commandLink1.Click, AddressOf commandLink1_Click
AddHandler commandLink2.Click, AddressOf commandLink2_Click
Private Sub commandLink1_Click(ByVal sender As Object, ByVal e As EventArgs)
'birinci link tuş işlemi
End Sub
Private Sub commandLink2_Click(ByVal sender As Object, ByVal e As EventArgs)
'ikinci link tuş işlemi
End Sub
TaskDialog'u kapatma kodu:
Kod:
taskdialog.close()
VB.NET için bu kadar. Şimdi C#'a geçeceğiz.
-- C# --
Aynı şekilde DLL'yi ekledikten sonra en üste:
Kod:
using Microsoft.WindowsAPICodePack.Dialogs;
KODLAR:
C#:
using System;
using System.Windows.Forms;
using Microsoft.WindowsAPICodePack.Dialogs;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
TaskDialog taskDialog = new TaskDialog();
TaskDialogProgressBar progressBar = new TaskDialogProgressBar();
taskDialog.ProgressBar = progressBar;
taskDialog.Caption = "Başlık";
taskDialog.InstructionText = "Yönerge";
taskDialog.Text = "Mesaj";
taskDialog.DetailsExpandedText = "Detaylar";
taskDialog.DetailsCollapsedLabel = "Genişlet";
taskDialog.Icon = TaskDialogStandardIcon.Error;
taskDialog.FooterIcon = TaskDialogStandardIcon.Warning;
taskDialog.FooterText = "Örnek yazı.";
taskDialog.Cancelable = true;
TaskDialogButton customButton1 = new TaskDialogButton("isim1", "Yazı");
TaskDialogButton customButton2 = new TaskDialogButton("isim2", "Yazı");
customButton1.Click += CustomButton1_Click;
customButton2.Click += CustomButton2_Click;
taskDialog.Controls.Add(customButton1);
taskDialog.Controls.Add(customButton2);
taskDialog.Opened += new EventHandler(taskDialog_Opened);
taskDialog.Show();
}
private void CustomButton1_Click(object sender, EventArgs e)
{
MessageBox.Show("1. düğmeye tıklandı!");
}
private void CustomButton2_Click(object sender, EventArgs e)
{
MessageBox.Show("2. düğmeye tıklandı!");
}
private void taskDialog_Opened(object sender, EventArgs e)
{
TaskDialog taskDialog = sender as TaskDialog;
taskDialog.Icon = taskDialog.Icon;
taskDialog.InstructionText = taskDialog.InstructionText;
taskDialog.FooterIcon = taskDialog.FooterIcon;
}
}
}
TaskDialog'u kapatma kodu:
C#:
taskdialog.Close();
C#'da bu şekilde yapılıyor. İsterseniz link düğme ekleyebilirsiniz ben onu göstermedim. Aynı DLL'yi eklemelisiniz. TaskDialog ile C# ve VB.NET projenizi daha modern bir görünüme kavuşturabilirsiniz. TaskDialog hakkında bir sorunuz olursa söyleyin yardımcı olmaya çalışırım. İnşAllah size yeni şeyler öğretebilmişimdir.
Son düzenleme:

