C#3.5的WinForms ...IExtenderProvider和WinForms設計文件
所以,我最近發現的IExtenderProvider,以及它如何被用來與其他屬性管制範圍擴大。
在工程樣機,我安裝我穿上「設置」方法的突破點我extendee財產和形式的負荷,我可以看到的「設置」方法爲表單上的每個控件執行;這正是我想要的。在成功的原型之後,我在我的主項目中實現了擴展器組件。我的項目中的所有表單都從我添加了擴展器組件的基本表單繼承。在基本形式上,我將擴展器組件的修飾符設置爲public,以便可以通過繼承此基本形式的表單訪問它。
在爲我的extendee屬性的'set'方法添加一個斷點之前做同樣的事情,但該方法不執行表單中的控件(但僅限於基本窗體中的控件)。幫幫我!
我也許應該補充在這一點上,我已經源來控制我的形式,因此大部分都是簽入(即從修改鎖)。對於我檢出並修改提供程序屬性的表單;我在設計器文件中注意到所有控件都有一個額外的聲明,它調用了provider屬性的'set'方法。
this.MyProvider1.SetMyProperty(this.txtTextBox1,FALSE);
我是否認爲擴展器組件工作時必須物理修改設計器文件,還是應該能夠處理鎖定的文件,並因此動態調用set方法?我想如果它確實需要修改設計器文件,那麼對於在將擴展器組件添加到項目後得到修改的新窗體或窗體,這不是問題 - 但是當你有101個窗體全部被源鎖定時-safe ...
我會很感激的任何想法...