私は簡単なWindowsフォームアプリケーションを作成しようとしています。私はTextBoxにテキストを書き、私がそれを行うたびに、テキストがリストにプッシュされるので、すべてのテキスト条件があります。そして、それを使用するために "戻る"ボタンがあります。 buttonBack.Click
はうまくいきます...しかし、box.TextChanged
はありません。 私は、このイベントは、私はあなたが「戻る」ボタンからテキストを更新したときに、それがスタックにそれを追加しているので、それが動作していないと信じているテキストWindowsフォームTextChanged
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Drawing;
namespace TextBox
{
class Revision
{
public string Text { get; set; }
public int CoursorPosition { get; set; }
}
class MyForm : Form
{
static RichTextBox box = new RichTextBox();
static List<Revision> revisions = new List<Revision>();
static void MakeRevision()
{
revisions.Add(new Revision
{
Text = box.Text,
CoursorPosition = box.SelectionStart
});
}
public MyForm()
{
var buttonBack = new Button()
{
Location = new Point(0, 0),
Size = new Size(ClientSize.Width, 30),
Text = "Back"
};
box.Size = new Size(ClientSize.Width, 100);
box.Multiline = true;
box.Location = new Point(0, buttonBack.Bottom);
box.TextChanged += (sender, args) => MakeRevision();
box.MouseDown += (sender, args) => MakeRevision();
Controls.Add(buttonBack);
Controls.Add(box);
buttonBack.Click += (sender, args) =>
{
box.Text = revisions.Last().ToString();
revisions.RemoveAt(revisions.IndexOf(revisions.Last()));
};
}
public static void Main()
{
var form = new MyForm();
Application.Run(form);
}
}
}
あなたはそれが何を意味するのですか? –
box.TextChanged + =(送信者、引数)=> MakeRevision();私はそれが電話したい) –
それはどのように動作しないのですか? –