0
我正在創建一個允許用戶選擇日期的自定義ComboBox
;日曆顯示被本地化,使內置的DateTimePicker
不受歡迎[請參閱here瞭解更多信息]。我需要UI控件來反映外觀和感覺或現有組件。以下是我已經試過,我已經遇到的問題:自定義DateTimePicker:獲得一致的外觀
- 使用與繪製
ComboBox
按鈕TextBox
:我一直在使用ComboBoxRenderer.DrawDropDownButton
但細看嘗試和感覺不鏡像現有的UI控件。特別是我們沒有Application.EnableVisualStyles()
,所以按鈕具有Windows 98的外觀和感覺。ComboBoxRenderer
繪製一個光滑的灰色按鈕。 - 使用
ComboBox
和ToolStripDropDown
來包含日曆控件:該按鈕具有正確的外觀和感覺,但我無法完全隱藏下拉框。即使ToolStripControlHost
實際上隱藏了下拉框,當我單擊該按鈕時,我可以看到正在顯示ToolStripDropDown
之前呈現的下拉框。我已經嘗試了有效禁用下拉框的解決方法,但是按鈕(如您所期望的那樣)不會保持被按下的所需視覺狀態(並且繪製按鈕會使我回到上述問題中)。 在OnMeasureItem
中將下拉框的高度設置爲零不起作用;儘管我想我可以使下拉框與我的日曆UI選擇器的高度相同,以便渲染看起來不會特別糟糕。
是否有現有的機制來獲得我需要的行爲:一個TextBox
顯示選定日期下拉箭頭按鈕,點擊後,顯示日曆UI選擇組件。日曆組件已存在,並且按鈕必須看起來像現有的Windows 98外觀和感覺ComboBox
按鈕。
謝謝你的時間和協助。