C# 用户定义的TabPage加载到TabControl
我目前正在为自己的利益编写一个小型rolodex应用程序,遇到了一个小问题 我编写了一个用户定义的TabPage dll。用户在空白页上输入有关某人的信息。然后,我从选项卡页面中剥离信息,并将其存储在我创建的C# 用户定义的TabPage加载到TabControl,c#,user-controls,tabcontrol,tabpage,C#,User Controls,Tabcontrol,Tabpage,我目前正在为自己的利益编写一个小型rolodex应用程序,遇到了一个小问题 我编写了一个用户定义的TabPage dll。用户在空白页上输入有关某人的信息。然后,我从选项卡页面中剥离信息,并将其存储在我创建的记录对象中 用户可以选择创建许多这样的选项卡页面。每次我将信息存储在记录对象中,并将该对象放置在列表中 当用户输入完联系人并想要浏览所有选项卡时,我会在TabControl上放置26个tabPages,A-Z。他们会滚动到他们想要的tabPages,以便查看他们的联系人 我遇到的问题是,我不
记录
对象中
用户可以选择创建许多这样的选项卡页面。每次我将信息存储在记录对象中,并将该对象放置在列表中
当用户输入完联系人并想要浏览所有选项卡时,我会在TabControl上放置26个tabPages,A-Z。他们会滚动到他们想要的tabPages,以便查看他们的联系人
我遇到的问题是,我不确定如何从列表
中获取数据并将其放回tabControl,而不必创建额外的选项卡。例如如果我有一个叫“John Smith”和“Suzan Smith”的人,我希望能够滚动到S选项卡,John的将首先出现,当我点击下一个时,Suzan的将显示出来
我已经按字母顺序排列了用户创建的选项卡。我只是不知道如何整齐地展示它们
如果有人有一些想法或一些伪代码那就太好了!谢谢 我会用字典)。例如:
List<record> cUngroupedRecords = new List<record>();
Dictionary<string, List<record>> cGroupedRecords = new Dictionary<string, List<record>();
foreach (record Record in cUngroupedRecords)
{
string sFirstChar = Record.LastName[0].ToString();
List<record> cRecords;
if (cGroupedRecords.ContainsKey(sFirstChar)) {
cRecords = cGroupedRecords[sFirstChar];
} else {
cRecords = new List<string>();
cGroupedRecords.Add(sFirstChar, cRecords);
}
cRecords.Add(Record);
}
List cUngroupedRecords=new List();
Dictionary cGroupedRecords=新建Dictionary Metro?WinForms?WPF?银灯?ASP.Net?MonoTouch?对我来说,这听起来像是一个令人困惑和笨拙的设计。我道歉。这就是为什么要获得更多的知识是我个人的一个项目。不适合任何专业人士。