rendered paste bodyusing System;
using System.Collections;
using System.Drawing;
using System.Windows.Forms;
namespace TestApp {
class SearchBar : UserControl {
TextBox filterTextBox;
ArrayList results;
public SearchBar() {
results = new ArrayList();
this.filterTextBox = new TextBox();
this.filterTextBox.TabIndex = 1;
this.filterTextBox.Dock = DockStyle.Fill;
this.filterTextBox.HandleCreated += new EventHandler(filterTextBox_HandleCreated);
this.Controls.Add(this.filterTextBox);
}
protected override void OnHandleCreated(EventArgs e) {
results.Add("OnHandleCreated");
base.OnHandleCreated(e);
}
public ArrayList Results {
get {
return results;
}
}
private void filterTextBox_HandleCreated(object sender, EventArgs e) {
results.Add("HandleCreatedEvent");
}
}
class MainWindow : System.Windows.Forms.Form {
public MainWindow() {
SearchBar b = new SearchBar ();
ClientSize = new System.Drawing.Size (250, 250);
b.Dock = DockStyle.Fill;
this.Controls.Add(b);
this.CreateControl();
string[] CreateEventsWant = {
"OnHandleCreated",
"HandleCreatedEvent"
};
VerifyEvents(b.Results, CreateEventsWant);
}
public bool VerifyEvents(ArrayList got, string[] want) {
if (got.Count != want.Length) {
return false;
}
for (int i = 0; i < got.Count; i++) {
if (!((string)got[i]).Equals(want[i])) {
return false;
}
}
return true;
}
public static void Main(string[] args) {
Application.Run(new MainWindow());
}
}
}