2017-01-03 14 views
0

enter image description hereC#WindowsForm - 背景色の濃さに基づいて、タブページのヘッダーのテキストの色を変更するにはどうすればよいですか?

私は、ヘッダーの背景色があるか暗いか明るいに基づくヘッダーにテキストの色を変更したい、ヘッダーの背景色を変更する必要はありません。

.eヘッダーの背景色が黒または濃い紫色の場合は、テキストを白にします。 またはヘッダーの背景色が明るい黄色の場合は、テキストを黒にします。

ありがとうございました。

tabControl1.DrawMode = TabDrawMode.OwnerDrawFixed; 
tabControl1.DrawItem += tabControl1_DrawItem; 

そして:

+0

あなたの投稿を誹謗中傷しないでください。 Stack Exchangeネットワーク上に掲載することで、SEがそのコンテンツを配布する権利(CC BY-SA 3.0ライセンス)(https://creativecommons.org/licenses/by-sa/3.0 /))。 SEのポリシーによって、どんな破壊行為も元に戻ります。この投稿とアカウントとの関連付けを解除する場合は、[解約リクエストの正しいルートは何ですか?](https://meta.stackoverflow.com/q/323395)を参照してください。 – NobodyNada

答えて

1

は、あなたの描画モードタブページに設定もちろん

private void tabControl1_DrawItem(object sender, DrawItemEventArgs e) 
{ 
    e.DrawBackground(); 
    var color = GetDesiredColor(e.Index); // TODO: Implement it for yourself 
    TextRenderer.DrawText(e.Graphics, tabControl1.TabPages[e.Index].Text, e.Font, e.Bounds, color); 
} 

を、あなたも、境界を調整したい場合があります。

関連する問題