Winforms XtratreList中的图像列存在问题
我使用XtratreList控件 共有两列:第一列用于文本,第二列用于图标 问题:我无法更改默认图标(相应imagelist中的索引为零)。imagelist中有3个图像 例如,我需要显示位于索引2处的图标 代码Winforms XtratreList中的图像列存在问题,winforms,devexpress,xtratreelist,Winforms,Devexpress,Xtratreelist,我使用XtratreList控件 共有两列:第一列用于文本,第二列用于图标 问题:我无法更改默认图标(相应imagelist中的索引为零)。imagelist中有3个图像 例如,我需要显示位于索引2处的图标 代码 这项任务应该使用稍微不同的方法来实现。首先,应该使用RepositoryItemImageComboBox并填充其Items属性。每个项目都有值和ImageIndex。树列表将在单元格图像中显示其值等于单元格值的项目。以下是适用于您的代码: TreeListColumn
这项任务应该使用稍微不同的方法来实现。首先,应该使用RepositoryItemImageComboBox并填充其Items属性。每个项目都有值和ImageIndex。树列表将在单元格图像中显示其值等于单元格值的项目。以下是适用于您的代码:
TreeListColumn col = treeList1.Columns.Add();
col.Caption = "Text";
col.Visible = true;
TreeListColumn colImage = treeList1.Columns.Add();
colImage.Caption = "ImageColumn";
colImage.Visible = true;
RepositoryItemImageComboBox imageEdit = new RepositoryItemImageComboBox();
imageEdit.SmallImages = imageList;
for(int i = 0; i < 3; i++)
imageEdit.Items.Add(new ImageComboBoxItem(i, i)); // i.e. value and image index
treeList1.RepositoryItems.Add(imageEdit);
colImage.ColumnEdit = imageEdit;
treeList1.BeginUnboundLoad();
TreeListNode node = treeList1.AppendNode(new object[] { "trololo", 2 }, null);
node.SetValue(colImage.AbsoluteIndex, 2);
treeList1.EndUnboundLoad();
TreeListColumn col=treeList1.Columns.Add();
col.Caption=“Text”;
可见=真实;
TreeListColumn colImage=treeList1.Columns.Add();
colImage.Caption=“ImageColumn”;
colImage.Visible=true;
RepositoryItemImageComboBox imageEdit=新建RepositoryItemImageComboBox();
imageEdit.SmallImages=imageList;
对于(int i=0;i<3;i++)
imageEdit.Items.Add(新的ImageComboBoxItem(i,i));//i、 e.价值和图像索引
treeList1.RepositoryItems.Add(imageEdit);
colImage.ColumnEdit=imageEdit;
treeList1.BeginUnboundLoad();
TreeListNode=treeList1.AppendNode(新对象[]{“trololo”,2},null);
node.SetValue(colImage.AbsoluteIndex,2);
treeList1.EndUnboundLoad();
应使用稍微不同的方法执行此任务。首先,应该使用RepositoryItemImageComboBox并填充其Items属性。每个项目都有值和ImageIndex。树列表将在单元格图像中显示其值等于单元格值的项目。以下是适用于您的代码:
TreeListColumn col = treeList1.Columns.Add();
col.Caption = "Text";
col.Visible = true;
TreeListColumn colImage = treeList1.Columns.Add();
colImage.Caption = "ImageColumn";
colImage.Visible = true;
RepositoryItemImageComboBox imageEdit = new RepositoryItemImageComboBox();
imageEdit.SmallImages = imageList;
for(int i = 0; i < 3; i++)
imageEdit.Items.Add(new ImageComboBoxItem(i, i)); // i.e. value and image index
treeList1.RepositoryItems.Add(imageEdit);
colImage.ColumnEdit = imageEdit;
treeList1.BeginUnboundLoad();
TreeListNode node = treeList1.AppendNode(new object[] { "trololo", 2 }, null);
node.SetValue(colImage.AbsoluteIndex, 2);
treeList1.EndUnboundLoad();
TreeListColumn col=treeList1.Columns.Add();
col.Caption=“Text”;
可见=真实;
TreeListColumn colImage=treeList1.Columns.Add();
colImage.Caption=“ImageColumn”;
colImage.Visible=true;
RepositoryItemImageComboBox imageEdit=新建RepositoryItemImageComboBox();
imageEdit.SmallImages=imageList;
对于(int i=0;i<3;i++)
imageEdit.Items.Add(新的ImageComboBoxItem(i,i));//i、 e.价值和图像索引
treeList1.RepositoryItems.Add(imageEdit);
colImage.ColumnEdit=imageEdit;
treeList1.BeginUnboundLoad();
TreeListNode=treeList1.AppendNode(新对象[]{“trololo”,2},null);
node.SetValue(colImage.AbsoluteIndex,2);
treeList1.EndUnboundLoad();
谢谢大家
使用RepositoryItemPictureEdit解决了我的问题。有点复杂,但能用
TreeListColumn col = treeList1.Columns.Add();
col.Caption = "Text";
col.Visible = true;
TreeListColumn colImage = treeList1.Columns.Add();
colImage.Caption = "ImageColumn";
colImage.Visible = true;
RepositoryItemPictureEdit imageEdit = new RepositoryItemPictureEdit();
imageEdit.ShowMenu = false;
treeList1.RepositoryItems.Add(imageEdit);
colImage.ColumnEdit = imageEdit;
treeList1.BeginUnboundLoad();
Image img = imageList.Images[1];
Bitmap bmp = new Bitmap(img);
TreeListNode node = treeList1.AppendNode(new object[] { "trololo", bmp }, null);
treeList1.EndUnboundLoad();
谢谢大家
使用RepositoryItemPictureEdit解决了我的问题。有点复杂,但能用
TreeListColumn col = treeList1.Columns.Add();
col.Caption = "Text";
col.Visible = true;
TreeListColumn colImage = treeList1.Columns.Add();
colImage.Caption = "ImageColumn";
colImage.Visible = true;
RepositoryItemPictureEdit imageEdit = new RepositoryItemPictureEdit();
imageEdit.ShowMenu = false;
treeList1.RepositoryItems.Add(imageEdit);
colImage.ColumnEdit = imageEdit;
treeList1.BeginUnboundLoad();
Image img = imageList.Images[1];
Bitmap bmp = new Bitmap(img);
TreeListNode node = treeList1.AppendNode(new object[] { "trololo", bmp }, null);
treeList1.EndUnboundLoad();
是否希望节点旁边有不同的图标(如VisuaStudio中的解决方案资源管理器)?或者另一列中的图像?另一列中的图像,这就是为什么我必须使用XtraTreeList而不是标准的TreeView您希望在节点旁边有不同的图标(如visua studio中的解决方案资源管理器)?或者另一列中的图像?另一列中的图像,这就是为什么我必须使用XtraTreeList而不是标准的TreeViewHanks来解决问题。但我只需要显示牢房里的图像。我不需要组合框。只有简单的图像。在我看来,这是一项非常简单的任务。这就是我使用RepositoryItemImageEdit的原因。我认为,如果组合框按钮被隐藏,这个解决方案将适用于您,除非您想用图像完全填充单元格。@DevExpress团队,我认为这行
node.SetValue(colImage.AbsoluteIndex,2)代码>可以删除,对吗?@DevExpress团队,组合框按钮将始终出现?还是有可能把它藏起来?对不起,我不在办公室。可以使用@manji发布的代码隐藏按钮。谢谢您的解决方案。但我只需要显示牢房里的图像。我不需要组合框。只有简单的图像。在我看来,这是一项非常简单的任务。这就是我使用RepositoryItemImageEdit的原因。我认为,如果组合框按钮被隐藏,这个解决方案将适用于您,除非您想用图像完全填充单元格。@DevExpress团队,我认为这行node.SetValue(colImage.AbsoluteIndex,2)代码>可以删除,对吗?@DevExpress团队,组合框按钮将始终出现?还是有可能把它藏起来?对不起,我不在办公室。可以使用@manji发布的代码隐藏按钮。