Динамические записи из текстовых файлов в FlowLayoutPanel - PullRequest
0 голосов
/ 13 июня 2018

В настоящее время я работаю над программой ToDo, где вы можете просто добавлять заметки.(С возможностью установки приоритета и вложения). Примечание будет сохранено в виде текстового файла.Теперь я хочу сделать обзор задач, которые должны быть выполнены.В конце он должен выглядеть как список, по одной строке для каждой ноты, построенный так:

TITLE ............................. [Значок вложения] .. [Значок приоритета] .. [CheckBox]

Флажок всегда должен быть с правой стороны строки.

Моя идея - добавить FlowLayoutPanel в FlowLayoutPanel для каждой заметки.В child-FlowLayoutPanel я добавлю элементы управления.Моя проблема в том, что я понятия не имею, как установить позиции элементов управления.Я попытался добавить метку и использовать ее как пробел между заголовком и другими элементами управления, но на самом деле это не работает.

Вот код, который у меня сейчас есть:

For Each File In Directory.GetFiles(myPath)
        Dim tlp As New FlowLayoutPanel
        tlp.BackColor = Color.Gray
        tlp.Width = 260
        tlp.FlowDirection = FlowDirection.TopDown

        Dim lbl As New Label
        lbl.AutoSize = True
        lbl.Text = getInsert(File, 0)
        lbl.Anchor = AnchorStyles.Right
        lbl.ForeColor = Color.White
        AddHandler lbl.Click, Sub() Me.getInsert(File, 0)

        tlp.Height = 40

        Dim cbx As New CheckBox
        cbx.FlatStyle = FlatStyle.Flat
        cbx.Text = ""
        cbx.Width = 15
        cbx.Height = 30
        AddHandler cbx.CheckStateChanged, Sub() Me.deleteEntry(tlp)


        Dim space As New Label
        space.AutoSize = False
        space.Text = ""
        space.Height = 30
        space.Anchor = AnchorStyles.Right

        tlp.Controls.Add(lbl)
        tlp.Controls.Add(Space)
        tlp.Controls.Add(cbx)
        Space.Width = tlp.Width - lbl.Width - cbx.Width - 15
        mfp.Controls.Add(tlp)
Next

Вот пример: todo_example

Я надеюсь, у кого-нибудь есть хорошая идея, как решить эту проблему.

Заранее спасибо:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...