TreeView
のデフォルトを変更しようとしていますhighlight color
。DefaultSelectionBackground
のように期待していたのですDataGridView
が、何も見つかりません。
これはの単なる別の制限TreeView
ですか、それとも私は何かが欠けていますか?
TreeViewなどのすべての標準Windowsコントロールは、ユーザーが選択したテーマの色に注意を払います。これは資産であり、ユーザーがこれまでプログラムを使用したことがない場合でも、ウィンドウは認識可能で使い慣れています。デフォルトのハイライト色は、すべてのコントロールの標準である青地に白です。そしてもちろん、ユーザーがカスタマイズできるTreeViewは自動的にそれに続きます。
本当に必要な場合は、ユーザーに独自の色設定を強制することができます。DrawModeプロパティをOwnerDrawTextに設定し、DrawNodeイベントを実装して自分自身を描画します。DrawNodeのMSDNライブラリの記事にその良い例があります。
<asp:TreeView runat="server"
ID="tvMyTreeView"
OnTreeNodeDataBound="tvMyTreeView_TreeNodeDataBound"/>
protected void tvMyTreeView_TreeNodeDataBound(object aSender, TreeNodeEventArgs anEvent)
{
DataRowView dr = (DataRowView)anEvent.Node.DataItem;
anEvent.Node.Style.Add("color", dr["COLOR"].ToString());
}