是否有机会删除所选节点周围的虚线?
答案 0 :(得分:2)
您不应该删除它,这表示具有焦点的节点,对于使用键盘选择节点的用户来说是必需的。
如果你想将这个可用性方面抛到窗外,那么你可以,TreeView支持自定义绘图。将其DrawMode属性设置为OwnerDrawText,并为其DrawNode事件实现事件处理程序。像:
private void treeView1_DrawNode(object sender, DrawTreeNodeEventArgs e) {
Color back = e.Node.BackColor;
Color fore = e.Node.ForeColor;
if ((e.State & TreeNodeStates.Selected) == TreeNodeStates.Selected) {
back = Color.FromKnownColor(KnownColor.Highlight);
fore = Color.FromKnownColor(KnownColor.HighlightText);
}
using (var br = new SolidBrush(back))
e.Graphics.FillRectangle(br, e.Bounds);
TextRenderer.DrawText(e.Graphics, e.Node.Text, e.Node.TreeView.Font, e.Bounds, fore);
}
答案 1 :(得分:0)
将CSS设置为
outline: none;
将删除虚线。
将css类应用于此类
<SelectedNodeStyle CssClass="selectNodeCSS" />
或
<asp:TreeView ... SelectedNodeStyle-CssClass="selectNodeCSS" ... />
CSS:
.selectNodeCSS {
outline: none;
}