как отобразить другое всплывающее окно на основе выбранной вкладки

#c# #datagrid #tabcontrol

#c# #datagrid #tabcontrol

Вопрос:

Я создаю приложение, которое использует представление с вкладками. В настоящее время я могу дважды щелкнуть строку в datagrid, и появляется новое окно, в котором я могу редактировать содержимое выбранной строки. Теперь у меня есть одна вкладка, для которой потребуется другое всплывающее окно, отличное от остальных вкладок. Как сделать так, чтобы на одной вкладке отображалось всплывающее окно, отличное от остальных вкладок, при двойном щелчке? Дайте мне знать, если вам нужна дополнительная информация.

Комментарии:

1. Как вы реализуете всплывающее окно? Если это в вашем собственном codebehind, то я бы поместил какой-нибудь индикатор в свойство TabItem «Tag», которое использовалось для выбора всплывающего окна (включая само всплывающее окно, поскольку тег принимает любой объект).

2. Почему бы просто не отобразить нужное вам окно в соответствии с выбранной в данный момент вкладкой? Это не кажется трудным. Возможно, вам следует включить какой-нибудь код, чтобы продемонстрировать, что вы пытаетесь сделать.

Ответ №1:

Проверьте TabControl.Свойство SelectedTab, чтобы увидеть, является ли текущая видимая вкладка той, которую вы хотите:

 OnClick()
{
  if (this.tabControl.SelectedTab == this.secondTab)
  {
    // Show different popup here
  }
  else
  {
    // Show common popup here
  }
}