Я добавляю событие для вкладок, которые создаются динамически.Однако при взаимодействии с пользовательским интерфейсом событие не вызывается.Помогите!:)
Я уже пробовал ниже, но не работает:
Обработка событий для динамически генерируемых элементов управления
C # TabControl TabPage прохождение событий
private void FileListView_DoubleClick(object sender, EventArgs e)
{
if (FileListView.SelectedIndices != null && FileListView.SelectedIndices.Count > 0)
{
FileListViewTask.Expand(settingsForm, FileListView, FileListView.SelectedIndices[0]);
string filepathSelected=FileListViewTask.getFilePath(FileListView.SelectedIndices[0]);
if (filepathSelected != "")
{
bool tabAlreadyExists = false;
foreach (TabPage tabpage in SourceTabControl.TabPages)
{
if (tabpage.GetNextControl(new Label(), true).Text == filepathSelected)
{
SourceTabControl.SelectTab(tabpage);
tabAlreadyExists = true;
break;
}
}
if (!tabAlreadyExists)
{
TabPage tabpage = (new CodePageGenerator(filepathSelected)).createPage();
tabpage.Parent = SourceTabControl;
tabpage.MouseDoubleClick += new MouseEventHandler(tabpage_MouseDoubleClick);
tabpage.Click += new EventHandler(this.tabpage_Click);
SourceTabControl.SelectTab(tabpage);
}
}
}
}
void tabpage_Click(object sender, EventArgs e)
{
TabPage tabpage = (TabPage)sender;
SourceTabControl.TabPages.Remove(tabpage);
MessageBox.Show("yow");
}
void tabpage_MouseDoubleClick(object sender, MouseEventArgs e)
{
TabPage tabpage = (TabPage)sender;
SourceTabControl.TabPages.Remove(tabpage);
MessageBox.Show("yow");
}
ОБНОВЛЕНИЕ
приведенный выше код работает, когда происходит щелчок внутри содержимого TabPage.Но не работает при нажатии вкладок