Sure thing! But note, that this C# is just the interface, and it also requires you to install **GTK** to your machine. Here is the code that loads this interface:

```cs
using Gtk;

public class MainWindow : Gtk.Window
{
    public MainWindow() : base("To-Do List")
    {
        // Set default size of window
        SetDefaultSize(600, 400);

        // Create a box to hold the grid and the task list
        Box box = new Box(Orientation.Vertical, 10);

        // Create a grid to hold the task entry and due date entry
        Grid grid = new Grid();
        grid.ColumnHomogeneous = true;
        grid.RowSpacing = 6;
        grid.ColumnSpacing = 6;
        grid.MarginStart = 10;
        grid.MarginEnd = 10;
        grid.MarginTop = 10;
        grid.MarginBottom = 10;

        // Add task label and entry to grid
        Label taskLabel = new Label("Task:");
        grid.Attach(taskLabel, 0, 0, 1, 1);
        Entry taskEntry = new Entry();
        taskEntry.Name = "task_entry";
        grid.Attach(taskEntry, 1, 0, 1, 1);

        // Add due date label and entry to grid
        Label dueDateLabel = new Label("Due Date:");
        grid.Attach(dueDateLabel, 0, 1, 1, 1);
        Entry dueDateEntry = new Entry();
        dueDateEntry.Name = "due_date_entry";
        grid.Attach(dueDateEntry, 1, 1, 1, 1);

        // Add "Add Task" button to grid
        Button addButton = new Button("Add Task");
        addButton.Expand = false;
        addButton.Halign = Align.End;
        addButton.Valign = Align.End;
        addButton.Clicked += OnAddTaskButtonClicked;
        grid.Attach(addButton, 1, 2, 1, 1);

        // Add grid to box
        box.Add(grid);

        // Create a scrolled window to hold the task list
        ScrolledWindow scrolledWindow = new ScrolledWindow();
        scrolledWindow.HscrollbarPolicy = PolicyType.Never;
        scrolledWindow.VscrollbarPolicy = PolicyType.Always;

        // Create a list box to hold the tasks
        ListBox listBox = new ListBox();
        listBox.Name = "task_list";

        // Add list box to scrolled window
        scrolledWindow.Add(listBox);

        // Add scrolled window to box
        box.Add(scrolledWindow);

        // Add box to window
        Add(box);

        // Show all widgets
        ShowAll();
    }

    private void OnAddTaskButtonClicked(object sender, EventArgs args)
    {
        // TODO: Implement task adding functionality
    }

    public static void Main(string[] args)
    {
        Application.Init();

        MainWindow mainWindow = new MainWindow();
        mainWindow.DeleteEvent += delegate { Application.Quit(); };
        mainWindow.Show();

        Application.Run();
    }
}
```

Some things to note: I commented the code, so you can understand how something works. I added a "TODO", so you will have to implement the functionality of adding tasks. Also, note that this is just a **beginning point**, and is **not** production-ready.
แน่นอน! แต่โปรดทราบว่า C# นี้เป็นเพียงอินเทอร์เฟซ และคุณต้องติดตั้ง **GTK** ลงในเครื่องของคุณด้วย นี่คือโค้ดที่โหลดอินเทอร์เฟซนี้: ```cs โดยใช้ Gtk; MainWindow ระดับสาธารณะ : Gtk.Window { mainWindow สาธารณะ() : base("To-Do List") { // กำหนดขนาดเริ่มต้นของหน้าต่าง SetDefaultSize(600, 400); // สร้างกล่องเพื่อเก็บตารางและรายการงาน Box box = new Box(Orientation.Vertical, 10); // สร้างตารางเพื่อเก็บรายการงานและรายการวันครบกำหนด Grid grid = new Grid(); grid.ColumnHomogeneous = จริง; ตาราง RowSpacing = 6; grid.ColumnSpacing = 6; grid.MarginStart = 10; ตาราง MarginEnd = 10; grid.MarginTop = 10; grid.MarginBottom = 10; // เพิ่มป้ายกำกับงานและเข้าสู่ตาราง Label TaskLabel = new Label("Task:"); grid.แนบ(taskLabel, 0, 0, 1, 1); รายการ jobEntry = รายการใหม่ (); TaskEntry.Name = "task_entry"; grid.Attach(รายการงาน, 1, 0, 1, 1); // เพิ่มป้ายกำกับวันครบกำหนดและเข้าสู่ตาราง Label DueDateLabel = new Label("Due Date:"); grid.Attach(dueDateLabel, 0, 1, 1, 1); รายการ DueDateEntry = รายการใหม่ (); DueDateEntry.Name = "due_date_entry"; grid.Attach(dueDateEntry, 1, 1, 1, 1); // เพิ่มปุ่ม "เพิ่มงาน" ลงในตาราง ปุ่ม addButton = ปุ่มใหม่ ("เพิ่มงาน"); addButton.Expand = เท็จ; addButton.Halign = จัดตำแหน่งสิ้นสุด; addButton.Valign = จัดตำแหน่งสิ้นสุด; addButton.Clicked += OnAddTaskButtonClicked; grid.Attach(เพิ่มปุ่ม, 1, 2, 1, 1); // เพิ่มตารางลงในกล่อง box.Add(grid); // สร้างหน้าต่างเลื่อนเพื่อเก็บรายการงาน ScrolledWindow scrolledWindow = new ScrolledWindow(); scrolledWindow.HscrollbarPolicy = PolicyType.Never; scrolledWindow.VscrollbarPolicy = PolicyType.Always; // สร้างกล่องรายการเพื่อเก็บงาน ListBox listBox = new ListBox(); listBox.Name = "task_list"; // เพิ่มกล่องรายการลงในหน้าต่างเลื่อน scrolledWindow.Add(listBox); // เพิ่มหน้าต่างเลื่อนลงในกล่อง box.Add(scrolledWindow); // เพิ่มกล่องไปที่หน้าต่าง เพิ่ม(กล่อง); // แสดงวิดเจ็ตทั้งหมด ShowAll(); } โมฆะส่วนตัว OnAddTaskButtonClicked (ผู้ส่งวัตถุ EventArgs args) { // สิ่งที่ต้องทำ: ใช้งานการเพิ่มฟังก์ชันการทำงาน } โมฆะคงที่สาธารณะ Main (สตริง [] args) { Application.Init (); MainWindow mainWindow = MainWindow ใหม่ (); mainWindow.DeleteEvent += มอบหมาย { Application.Quit (); }; mainWindow.Show(); Application.Run(); } ``` บางสิ่งที่ควรทราบ: ฉันได้ใส่ความคิดเห็นเกี่ยวกับโค้ดแล้ว ดังนั้นคุณจึงสามารถเข้าใจได้ว่าบางสิ่งทำงานอย่างไร ฉันเพิ่ม "สิ่งที่ต้องทำ" แล้ว ดังนั้นคุณจะต้องใช้ฟังก์ชันการเพิ่มงาน นอกจากนี้ โปรดทราบว่านี่เป็นเพียง**จุดเริ่มต้น** และ**ไม่**พร้อมสำหรับการผลิต
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence