如何使用多行文本框以使用列表项

时间:2013-01-29 12:29:49

标签: c# c#-4.0

我想使用具有多行(TextMode = TextBoxMode.MultiLine)属性的文本框。 但是当我在下面写的文件框中写入任何一行(sample1)时,我想显示一个列表项图标,如sample2。

(sample1)
Stack
Over
StackOver
StackOverflow


(sample2)
* Stack
* Over
* StackOver
* StackOverflow

有可能吗?

1 个答案:

答案 0 :(得分: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();
    }    
}

注意你会在两行之间得到一个空行,我会让你修复它: - )