簡體   English   中英

使用.Net UserControl設計問題

[英]Design problems with .Net UserControl

我創建了一個UserControl,里面有一個ListView ListView可通過屬性公開訪問。 當我將UserControl放在一個表單中並嘗試通過屬性設計ListViewListView保持這種狀態,直到我再次編譯並恢復到默認狀態。

如何讓我的設計更改堅持ListView

您需要使用DesignerSerializationVisibility屬性修飾ListView屬性,如下所示:

[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public ListView MyListView { get { return this.listView1; } }

這告訴設計者的代碼生成器為它輸出代碼。

Fredrik是正確的,基本上,當您需要啟用設計器將屬性保持為頁面時,可以在運行時對其進行實例化。 只有一種方法可以做到這一點,那就是將其值寫入ASPX頁面,然后運行時將其選中。

否則,控件將每次都簡單地恢復到其默認狀態。

始終牢記在頁面(及其內容)和代碼在ASP.NET中完全獨立,它們在運行時被連接起來。 這意味着您不會像在WinForms應用程序中那樣獲得良好的代碼隱藏設計器支持(其中表單是對象的實例)。

就這樣我很清楚,你做過這樣的事,對吧?

public ListView MyListView { get { return this.listView1; } }

那么您是否正在(在設計時)訪問UserControl上的MyListView屬性?

我想如果您需要適當的設計時支持,最好將ListView本身(返回原始UserControl)上的“Modifier”屬性更改為Public - 這樣您就可以直接在UserControl的實例上修改ListView。 無論如何,我已經取得了成功。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM