我有一個由Visual Studio創建的Ribbon1類。如何從外部類訪問Ribbon控件(例如RibbonEditBox)?
public Microsoft.Office.Tools.Ribbon.RibbonEditBox IDBox;
我想訪問其他類中的某個功能區控件。
using MyRibbon = ExcelAddIn1.Ribbon1;
xlTextID = MyRibbon.IDBox.Text;
我收到了錯誤消息。
非靜態字段方法 屬性需要對象引用。
我不能讓IDBox靜態,因爲它通過'InitializeComponent()'方法初始化爲一個類的實例。
this.IDBox = this.Factory.CreateRibbonEditBox();
我也嘗試創建一個屬性。
private Microsoft.Office.Tools.Ribbon.RibbonEditBox IDBox;
public Microsoft.Office.Tools.Ribbon.RibbonEditBox IDBoxProperty
{
get { return IDBox; }
set { IDBox = value; }
}
這樣做我看到了完全相同的錯誤。
如何保持IDBox非靜態並仍然可以從外部類訪問它?
我可以找到答案 - 看下面。
的可能重複的[對象引用是所必需的非靜態字段,方法或屬性「WindowsApplication1.Form1.setTextboxText(int)的](http://stackoverflow.com/questions/498400/an-object-reference-is-required-for-the-nonstatic-field-method-or-property-wi) –
根據許多近乎相同的問題在這裏「對象引用對於非靜態字段,方法,屬性是必需的」,您正在訪問該類,就好像它是該類的實例(對象)一樣。您需要創建一個「MyRibbon.IDBox」實例(或者更類似於訪問由'InitializeComponent'方法創建的現有實例),而不是'MyRibbon.IDBox.Text'。 –
如何訪問由InitializeComponent方法創建的實例? – LLaP