- PR -

【C#】ToolStripでのコンボボックスの枠線について

1
投稿者投稿内容
菊さん
会議室デビュー日: 2008/10/12
投稿数: 6
投稿日時: 2008-10-12 18:53
お世話になります。
VC# .NETについて質問です。

ToolStripに配置したコンボボックスの枠線がない(実際には白の枠線)のですが、枠線の色を変えることは可能でしょうか?

コンボボックスに「Border」のようなプロパティがなく困っています。
枠線の色を指定する方法についてお教え頂ければと存じます。
菊さん
会議室デビュー日: 2008/10/12
投稿数: 6
投稿日時: 2008-10-12 18:54
補足です。

開発環境は
Microsoft Visual C# 2008 Express Edition
です。
たくボン
会議室デビュー日: 2008/10/06
投稿数: 5
投稿日時: 2008-10-13 01:32
枠線を表示したいのなら、
this.toolStripComboBox1.ComboBox.FlatStyle = FlatStyle.Standard;

かな。枠線を色付で描画したいのなら、独自で描画メソッドを実装だけど、ToolStripComboBoxのPaintに実装したら、矩形下部の枠線が描画しきれなかったので、コンテナのToolStripのPaintで実装するのがいいかも。

コード:
private void Form1_Load(object sender, EventArgs e)
{
  this.toolStrip1.Paint += new PaintEventHandler(PaintToolStrip);    
}

void PaintToolStrip(object sender, PaintEventArgs e)
{
  Graphics g = e.Graphics;
  Rectangle rect = new Rectangle(
    toolStripComboBox1.Bounds.X-1,
    toolStripComboBox1.Bounds.Y+1,
    toolStripComboBox1.Width + 1,
    toolStripComboBox1.Height-4);
  g.DrawRectangle(Pens.Red, rect);
}



オフセットは調整してくださいね。
菊さん
会議室デビュー日: 2008/10/12
投稿数: 6
投稿日時: 2008-10-13 09:43
ご回答頂きありがとうございます。

this.toolStripComboBox1.ComboBox.FlatStyle = FlatStyle.Standard;
で枠線を表示させることが出来ました!
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)