在WinForm開發中,一般會在窗體或者UserControl中判斷當前是否為設計狀態,如:
if (!this.DesignMode)
{
//
}
有時候需要在Load事件中加上一些從服務端獲取數據的操作,如果此時是一個UserControl,當把這個UserControl加入到主窗體時,界面(設計狀態的界面)就會無法顯示,當然能編譯通過,正常運行,但是在設計時沒有一個直觀的界面和無法對界面進行布局還是一件很不爽的事情,所以用這個DesignMode屬性來判斷當前是否為設計模式,如果是設計模式就不需要從服務端獲取數據,這樣避免在主界面無法顯示的問題.
相同的問題再WPF也會存在,也需要在WPF的UserControl中判斷當前是否為設計模式,如下:
private voidUserControl_Loaded(objectsender, RoutedEventArgse)
{
if(!DesignerProperties.GetIsInDesignMode(this))
{
}
}
這樣就能防止在開發設計時無法顯示界面的問題了