我想使用具有多行(TextMode = TextBoxMode.MultiLine)
属性的文本框。
但是当我在下面写的文件框中写入任何一行(sample1)时,我想显示一个列表项图标,如sample2。
(sample1)
Stack
Over
StackOver
StackOverflow
(sample2)
* Stack
* Over
* StackOver
* StackOverflow
有可能吗?
答案 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();
}
}
注意你会在两行之间得到一个空行,我会让你修复它: - )