C UserControl,c 中的UserControl是什麼 使用者控制元件和自定義控制元件有什麼

2022-03-21 19:41:40 字數 5213 閱讀 8700

1樓:逍遙墮仙

問題一:

usercontrol裡放個close按鈕,加入**:

form form1 = this.parent as form;

form1.close();

問題二:

在usercontrol中加入下面事件

private void usercontrol1_keypress(object sender, keypresseventargs e)

在下面的事件中判斷key的值....

再作處理....

2樓:匿名使用者

可以在form_load事件裡把this傳給usercontrol,然後在usercontrol裡呼叫form的各種方法,不過這種做法不太好,耦合性較高。

標準做法是用事件傳遞

usercontrol里加如下**:

public delegate void formcloseeventhandler(object sender, eventargs e);

public event formcloseeventhandler formclose;

private void button_quit_click(object sender, eventargs e)

}在form裡新增如下**:

form_load事件裡:

this.usercontrol.formclose += new usercontrol.

formcloseeventhandler(this.usercontrol_formclose);

單獨的方法:

private void usercontrol_formclose(object sender, eventargs e)

後面的enter和esc都可參考以上方法解決,關於事件的用法再去查查msdn吧。。。

3樓:

private void button_quit_click(object sender, eventargs e)

4樓:火沙

form frm = this.findform();

if(frm!=null)

5樓:

廢話不多說 頂3樓

6樓:匿名使用者

頂樓上,如果自己不拖這個控制元件,我應該如果來載入這個使用者自定的控制元件到指定的相對位置,例項化這個物件,然後載入到相對位置。這個我應該如何來完成。

c# winfrom 如何使用usercontrol?

7樓:創作者

你直接建立一個usercontrol,編譯通過儲存就好了。然後在winform裡就可以直接從工具箱拖下來,當一般的工具使用。你也可以把他當作控制元件使用。

比方說我建立一個叫utext的控制元件。他的用法選擇幾個舉例:

///建立控制元件

///例項

//在全域性環境例項化他

utext u=new utext();

//在窗體中指定位置新增他,把createtext寫到public窗體類裡面去或者formload初始化就顯示

void createtext()

//在一個名稱空間可以直接使用他,比如我要給他賦值,點個按鈕就把上面的文字複製給他

void settxt(object sender,eventargs e)

//直接在窗體初始化時 把這個事件加入按鈕

//如何查詢他的控制元件屬性呢,我們可以通過成員遍歷找到他

private string viewcontrol()

}return str;}

8樓:玩轉資料處理

以vs2005為說明,建立及使用自定義控制元件方法如下:

一、建立usercontrol

1. 開啟vs2005,檔案/新建/專案。2. 出現「新建專案」對話方塊。

3. 在「名稱」框中,鍵入專案名稱,「位置」框選擇要儲存的位置。

4. 從「語言」列表中選擇要使用的程式語言。

5. 單擊「新增」,這時一個自定義控制元件工程已經建成,生成一下,就製作了一個簡單的自定義控制元件,只不過沒有任何功能。

6. 向新使用者控制元件新增任何標記和控制元件,併為該使用者控制元件新增執行的所有任務(例如,處理控制元件事件或從資料來源讀取資料)新增**。

二、使用usercontrol

1. 啟動 vs2005。

2. 通過從「檔案」選單單擊/新建/專案/windows應用程式,新增新窗體。

3. 右鍵「工具箱/選擇項…」,在彈出的「選擇工具箱項」對話方塊中點下面的瀏覽按鈕選擇要使用控制元件的 dll;確定後,該控制元件出現在工具箱的底部。

4. 選擇該控制元件並將其新增到窗體中。將看到該控制元件出現在窗體上。

5. 如果從上一個示例新增控制元件,您將注意到即使如此簡單的控制元件都具有一整套屬性和廣泛的設計時行為。此預設行為是從 control 類繼承的。

c#開發windows應用程式,usercontrol怎麼使用?

9樓:axure夜話

usercontrol就是使用者控制元件的意思,可以理解為自定義控制元件的一種方式。

在vs的windows應用程式專案中你右鍵選擇新增是有」使用者控制元件「這一項的,在使用者控制元件上面你可以在新增其他的控制元件和編寫**。

使用者控制元件完成以後,你可以在工具箱檢視到!

有兩種方式使用建立好的使用者控制元件:

第一種方式:和普通的窗體控制元件一樣,從工具箱中拖放到任意的窗體或者容器中。

比如tabpage1,tabpage2中

第二種方式:當成一個普通的控制元件一樣動態建立。然後新增到容器中。

usercontrol1 uc1=new usercontrol1();

this.tabpage1.controls.add(uc1);

usercontrol1 uc2=new usercontrol2();

this.tabpage2.controls.add(uc2)

10樓:匿名使用者

很簡單,只要在tabpage1的事件中新增**:

usercontrol1 uc=new usercontrol1;

uc.show();

就好了。

再給你舉個例子:

記事本的查詢功能,當單擊查詢時會彈出查詢對話方塊,你只要在查詢的事件中新增如下**:

form3 f3 = new form3();

f3.show();//form3為查詢對話方塊的name.

11樓:匿名使用者

你的usercontrol1和usercontrol2可以直接拉到你的兩個tabpage裡吧?

12樓:

page_load時

tabpage1.visable=true;

tabpage2.visable=false;

tabpage1_onclick;tabpage1.visable=true;

tabpage2.visable=false;

tabpage2_onclick;tabpage2.visable=true;

tabpage1.visable=false;

c# 中的usercontrol是什麼 使用者控制元件和自定義控制元件有什麼

winform 中的usercontrol怎麼和主窗體互動

13樓:匿名使用者

直接傳值

通過窗體建構函式呼叫 先要見一個私有變數

類似這樣

private string str;

public frmmain(string str)

14樓:文件類共創空間

在窗體間傳遞資料的方法比較多:

在子窗體中自定義一個建構函式,引數型別是主窗體,當要顯示子窗體的時候,就用這個建構函式來例項化子窗體,然後把this指標傳進去,說起來太抽象了,我大概一寫大家應該就明白了:

public class frmmain:form public class frmcontrol:form //子窗體,用來控制主窗體的某些顯示!

private void button1_click(object sender,eventargs e) }

c# usercontrol 內部如何呼叫主窗體裡的函式

15樓:昝傲易

這個牽涉的問題很多,傳方法是不肯能的,因為方法都需要通過類的例項來呼叫(當然除了靜態方法外),所以你有兩個方向的辦法

1:傳入父窗體的一個引用到a中,這樣你可以呼叫父窗體的所有public的函式

2:在父窗體中新增共有屬性,通過修改屬性呼叫你需要的方法,例如:b}}這樣只要你對i賦值一次就會呼叫一次c();

如果存在引數可以通過修改i的型別窗體引數給c()呼叫

16樓:你咋還不囧

你在自定義控制元件多寫一個建構函式,引數型別是form,儲存下來,然後建立這個自定義控制元件物件的時候把父窗體整個傳遞進去,然後就可以呼叫父窗體的public方法了,不過這麼做有些浪費資源。

你也可以用樓上說的第2種方法,也挺好

c#自己寫的控制元件屬性放到usercontrol裡面,然後在**裡面怎麼用?

17樓:匿名使用者

如果你的datagridview不需要例項化的話就這樣寫;

public partial class usercontrol1 : usercontrol

set}public usercontrol1()}其他地方就可以呼叫咯

usercontrol1.paixu="希望能幫助你";

如果需要例項化的話就不需要靜態屬性了

18樓:匿名使用者

是ascx 裡的控制元件吧

只有asp.net 伺服器控制元件就是 servercontrol 通過引用的方法才能用. 點號把他點出來

你要通過主頁訪問自定義控制元件裡的一個控制元件的屬性就要把它先找出來比如你的控制元件是裡有一個button1

那麼後臺**如下:

button btn1 = uc1.findcontrol("button1") as button;

if (btn1 != null)

python中的python中的問題

在python中,所有識別符號 可以包括英文 數字以及下劃線 但不能以數字開頭。python中的識別符號是區分大小寫的。這是知識背景 但是通常python的變成習慣以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭 foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用 from ...

海鮮中的中卷許花枝分別是什麼,海鮮中的中卷,小卷,花枝分別是什麼

一 中卷就是小的鮮魷魚,個頭比較大的就叫作魷魚。二 小卷就是小烏賊。三 花枝俗稱烏賊也叫墨斗魚 烏魚,因其沒有脊椎骨,雖然被叫做魚,其實它是生活在海洋裡的軟體動物。1.魷魚富含蛋白質 鈣 磷 鐵 鉀等,並含有十分豐富的諸如硒 碘 錳 銅等微量元素的食物。魷魚還含有大量的牛黃酸,可抑制血液中的膽固醇含...

《美女的煩惱》中《Beautiful Girl》中文歌詞

歌曲 beautiful girl 歌手 金雅中 醜女大翻身 美女的煩惱 具體歌詞 you re my beautiful girl.beautiful girl beautiful i m a beautiful girl beautiful girl hello,hello i m a beau...