Accessing add-in's global variables
Hi
I have done this in excel.
1- you have to make sure that you application is visible by com.
2- create an instance of your application
3- create an instance of your addin
4- using invoke method you can have access to your public property.
step 2
app = new Excel.Application();
step 3
object sAddInName = "SimulationSmartClientAddIN.Connect";
object objApp_addin = app.COMAddIns.Item(ref sAddInName).Object;
step 4
to set a property:SetProperty(objApp_addin, "PropertyName", Value);
to get a property:SetProperty(objApp_addin, "PropertyName");
private void SetProperty(object obj, string sProperty, object oValue)
{
object[] oParam = new object[1];
oParam[0] = oValue;
obj.GetType().InvokeMember(sProperty,
System.Reflection.BindingFlags.SetProperty, null, obj, oParam);
}
private static object GetProperty(object obj, string sProperty)
{
return obj.GetType().InvokeMember(sProperty,
System.Reflection.BindingFlags.GetProperty, null, obj, null);
}
|