У меня есть TreeView
, который отображает CheckBox
es:
Я хочу проверить, содержит ли данный каталог базу данных ".mdf" и делает ли онапроверьте, подключен ли он к выбранному экземпляру сервера.Если база данных прикреплена, я отображаю изображение на этом узле и другое изображение, если оно не прикреплено.Примечание: изображения имеют формат .png, размер 32x32 ...
Я заполняю ImageList
из Properties.Resources
mainImageList = new ImageList();
mainImageList.Images.Add(Properties.Resources.Database);
mainImageList.Images.Add(Properties.Resources.DatabaseGrey);
Затем я перебираю дерево и добавляю соответствующее изображение
public static void RecursiveAddImage(TreeNode treeNode, List<string> attachedList)
{
if (String.Compare(Path.GetExtension(treeNode.Text), ".mdf", true) == 0)
{
string databaseName = treeNode.Text.Replace(".mdf", String.Empty);
if (attachedList.Contains(databaseName))
{
treeNode.ImageIndex = 0;
treeNode.SelectedImageIndex = 0;
}
else
{
treeNode.ImageIndex = 1;
treeNode.SelectedImageIndex = 1;
}
}
foreach (TreeNode node in treeNode.Nodes)
RecursiveAddImage(node, attachedList);
}
Приведенный выше код проходит цикл без жалоб, находит ".mdf" и, кажется, добавляет соответствующие ImageIndexes
, но они не отображаются в TreeView
.Что я здесь не так делаю и могу ли я добавить ImageList
во время разработки (что я тоже не могу сделать)?
Я прочитал несколько постов и, конечно же, документацию MSDN но я все еще не могу заставить его работать.Любая помощь, как всегда, высоко ценится.