0

(TextMode = TextBoxMode.MultiLine)複数行のプロパティを持つテキストボックスを使用したい。しかし、以下のように書くと(sample1)、テキストボックスに任意の行を書き込んでいるときに、sample2のようにリストアイテムのアイコンを表示したい.

(sample1)
Stack
Over
StackOver
StackOverflow


(sample2)
* Stack
* Over
* StackOver
* StackOverflow

出来ますか?

4

1 に答える 1

1

これは最もエレガントな方法ではないかもしれませんが、私にとってはうまくいきます。イベントを使用してキーKey_Upをキャッチします。Return

private void TextBox1_KeyUp(System.Object sender, System.Windows.Forms.KeyEventArgs e)    {

    if (e.KeyCode == Keys.Return) {

        string[] TextLines = TextBox1.Text.Split(Environment.NewLine);

        TextBox1.Text = "";    

        foreach ( txLine in TextLines) {

            if (!txLine.Contains("*") & !string.IsNullOrEmpty(txLine.Trim)) {
                txLine = "* " + txLine;    
            }

            TextBox1.Text += (txLine + Environment.NewLine);    
        }

        TextBox1.SelectionStart = TextBox1.Text.Length;
        TextBox1.ScrollToCaret();
    }    
}

行間に空の行が表示されることに注意してください。修正させていただきます:-)

于 2013-01-29T13:13:26.120 に答える