콘텐츠를 한 번만 열 수있는 탭 컨트롤을 만들고 싶습니다. 열린 각 항목은 컨테이너가 아직 표시되지 않았는지 확인해야합니다. 사용하려는 메서드는 bool TabControl.TabPages.ContainsKey(string key) 메서드라고 생각하지만 항상 false 값을 반환합니다.탭 컨트롤의 ContainsKey() 메서드는 무엇과 비교됩니까?
탭 컨트롤과 동기화 된 별도의 목록에 개체를 저장하는 방법을 만들었지 만 매우 잘못된 느낌입니다. 컨트롤의 TabPages 속성에 목록이 있으므로 쿼리를 쿼리 할 수 있어야합니다.
속성이 누락 되었습니까? 이 방법에 대한 내 기대와 그것이 정확히 무엇을 수행하고 있는가? 열린 탭을 올바르게 식별하려면 어떻게합니까? 모든 것을 말해
private void _fillTabControl()
{
List<string> keys = new List<string>() { "one", "two" };
foreach (string key in keys)
_addTab(key);
bool alreadyOpened = tabControl.TabPages.ContainsKey(keys[0]);
}
private void _addTab(string key)
{
TextBox textBox = new TextBox();
textBox.Text = key;
TabPage tab = new TabPage();
tab.Text = key;
tab.Controls.Add(textBox);
tabControl.TabPages.Add(tab);
}
남자 ... 순간 실명. 감사. – curtisthibault