テキストボックスとリストボックスを使用するユーザーコントロールがあります。リストボックスは表示されません。ユーザーが入力を開始したり、テキストボックス内をクリックしたりすると表示されます。コントロールを前面に表示
フォーム上にあるグループボックスにユーザーコントロールを追加しました。
今、リストボックスが表示されると、グループボックス内にとどまり、完全な高さを見ることができません。私はそれが全高を見ることができるように一番上に浮かべていません。
私は周りを見回し、いくつかのソリューションを実装しましたが、何も私のために働いていませんでした。
ユーザ制御
namespace YarCustomControl
{
public partial class YarCustom : TextBox
{
public YarCustom()
{
InitializeComponent();
_code = "";
_id = -1;
//list box handling
listBox = new ListBox();
listBox.Visible = false;
listBox.Font = this.Font;
listBox.Location = this.Location;
listBox.BorderStyle = BorderStyle.Fixed3D;
listBox.Resize += new EventHandler(listBox_Resize);
//listBox.SelectedValueChanged += new EventHandler(listBox_SelectedValueChanged);
listBox.KeyDown += new KeyEventHandler(listBox_KeyDown);
listBox.Click += new EventHandler(listBox_Click);
//test => no affect on listbox
this.Controls.Add(listBox);
listBox.Visible = false;
}
}
}
以下の方法のコンストラクタは、リストボックスが表示させます。どちらSetchildIndex(コメントとコメントしていない)投げるエラー
private void makeListBoxVisible()
{
Form parentForm = (this.FindForm() as Form);
//parentForm.Controls.SetChildIndex(listBox, 0);
this.Controls.SetChildIndex(listBox, 0);
listBox.Visible = true;
listBox.BringToFront();
}
このような何かを処理するための最善のアプローチは何ですか?
私の環境はVS2010とWinFormsです。
なぜあなたは模倣しているように見えるComboBoxを使用しないのですか? – LarsTech
現在の状況に近いものを作成して問題が発生しています。 –
この方法で試すことができます:[C#Winformsのドロップダウン情報ボックスの作成方法](https://stackoverflow.com/a/21289062/719186) – LarsTech