你要獲得組合框的句柄做什么呢?
是要讀取組合框條目的值還是進行什么操作呢?
要讀取值用selectedIndex讀取索引值(從0開始),用selectedItem讀取選項的內容(要進行類型轉換),用selectedIndex.key可以獲得按鍵值;
要完成句柄的操作也有三種方式,用其一也可,但工程較大,用於Windows編程:
1、用父窗口的函數: WM_DRAWITEM函數重繪,再用句柄用函數GetWindow(hCombo,GW_CHILD)即可
2、可以通過API函數 GetComboBoxInfo 得到ComboBox 的信息,控件得重繪:
protected override void OnHandleCreated(EventArgs e)
{
base.OnHandleCreated(e);
ComboBoxInfo cbi = new ComboBoxInfo();
cbi.cbSize = Marshal.SizeOf(cbi);
GetComboBoxInfo(base.Handle, ref cbi);
_editHandle = cbi.hwndEdit;
if (DropDownStyle != ComboBoxStyle.DropDownList)
{
_editNativeWindow = new EditNativeWindow(this);
}
}
3、用.NET里封裝好的函數:
SendMessage(comboBox1.Handle, CB_SETCURSEL, 1, 0);
/////////////////////////////////////
通過FindWindowEx(formhwnd, 0, vbNullString, "名字 ")我能夠得到按鈕的句柄,可下拉列表沒有名字,我如何得到?
///////////////////////////////////////////////////////////////////
http://www.cnblogs.com/hssbsw/archive/2012/02/09/2344489.html