0

選択したノードの周りのこの点線を削除する機会はありますか?

4

2 に答える 2

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);
}
于 2012-07-22T18:43:24.323 に答える
-1

CSSを次のように設定します

outline: none;

これにより、点線が削除されます。

編集:

このようなcssクラスを適用します

<SelectedNodeStyle CssClass="selectNodeCSS" />

また

<asp:TreeView ... SelectedNodeStyle-CssClass="selectNodeCSS" ... />

CSS:

.selectNodeCSS {
    outline: none;
}
于 2012-07-22T18:39:45.770 に答える