寫Form設計器嘗試 三 在窗體上新增控制項

2021-10-04 15:12:57 字數 1210 閱讀 2021

新建乙個繼承自toolboxservice的類,名為demotoolboxservice,加上必要的using語句,在所繼承的類名上按滑鼠右鍵,點實現抽象類,已經幫我們自動完成了demotoolboxservice的框架,由於我們需要在設計器窗體上顯示乙個工具箱,就像vs左側的那個工具面板,不過我們現在做乙個簡單一點的,就用listbox,在demotoolboxservice中新增乙個型別為listbox的私有成員,並封裝成屬性。稍微改動一下,實現幾個必要的方法,**如下:

class demotoolboxservice : toolboxservice

set

}protected override categorynamecollection categorynames => null;

protected override string selectedcategory

}//實現工具箱選擇

protected override toolboxitemcontainer selecteditemcontainer

return null;

}set }}

//實現帶分類的工具列表,由於目前不分類,所以即為全部工具

protected override ilist getitemcontainers()

protected override ilist getitemcontainers(string categoryname)

protected override void refresh()

}

切換到主form的設計介面,在那個splitcontainer左側放上乙個panel1,並把dock屬性設定為left,作為將要完成的工具箱的容器,另外再放乙個panel2,把dock屬性設定為fill,作為form的容器,再卻換到form的**編輯介面,新增乙個型別為demotoolservice的私有成員toolboxservice,修改load事件**,相關的**如下:

public partial class form1 : form

private void form1_load(object sender, eventargs e)}}

執行方案,並試著在所設計的窗體上加上幾個控制項,介面如下:

寫Form設計器嘗試 一

eddie sheffield 作為微軟之外的第乙個發現啟用 form designer 的人,確實是了不起 幾年過後的今天,已經可以 找到一些關於form designer的資料,雖然不多也不全面,但畢竟還是有一些。我手上的資料是 1 中文版,第 16章專門講 form 設計器 2 windows...

寫Form設計器嘗試 一

新建乙個c windowform方案,在工程的引用中增加system.design,在form1的 中先新增 using system.componentmodel.design 然後雙擊form,在form的load事件中寫下以下 designsu ce su ce new designsu ce...

寫Form設計器嘗試 五 讓設計器使用自定義控制項

在 寫form 設計器嘗試 三 leejee 提出了自定義控制項的問題。我於是作了乙個小測試,來實現設計器中使用自定義控制項。先要準備乙個自定義控制項。新建乙個 windows 控制項方案,命名為 mycontrol,新增乙個名為 comboboxfield 的使用者控制項,在該使用者控制項上放乙個...