I’m trying to set it up where once you input the custid and leave the field, everything auto populates without having to hit the refresh button. What method should I be trying to call to get this to work?
i’d go with a validating event in your control (probably a text box?) and then call a refresh. Many of the methods natively inside the dashboard assembly are private though you can use reflection to get to them.
MethodInfo mi = typeof(EpiBaseForm).GetMethod("handleToolClick", BindingFlags.Instance | BindingFlags.NonPublic);
mi.Invoke(MainController, new object[] { "RefreshTool", new Infragistics.Win.UltraWinToolbars.ToolClickEventArgs(MainController.MainToolManager.Tools["RefreshTool"], null) });
@rbucek Here is the customization that was come up with. Your piece was very helpful.
public class Script
{
// ** Wizard Insert Location - Do Not Remove ‘Begin/End Wizard Added Module Level Variables’ Comments! **
// Begin Wizard Added Module Level Variables **
private EpiTextBox txtcustid;
// End Wizard Added Module Level Variables **
// Add Custom Module Level Variables Here **
public void InitializeCustomCode()
{
// ** Wizard Insert Location - Do not delete 'Begin/End Wizard Added Variable Initialization' lines **
// Begin Wizard Added Variable Initialization
this.txtcustid = (EpiTextBox)csm.GetNativeControlReference(“65632918-1f6c-4399-9db4-61c79e45d8ba”);
this.txtcustid.LostFocus += new System.EventHandler(this.txtcustid_LostFocus);
// End Wizard Added Variable Initialization
// Begin Wizard Added Custom Method Calls
// End Wizard Added Custom Method Calls
}
public void DestroyCustomCode()
{
// ** Wizard Insert Location - Do not delete 'Begin/End Wizard Added Object Disposal' lines **
// Begin Wizard Added Object Disposal
// End Wizard Added Object Disposal
this.txtcustid.LostFocus -= new System.EventHandler(this.txtcustid_LostFocus);
// Begin Custom Code Disposal
// End Custom Code Disposal
}
private void txtcustid_LostFocus(object sender, System.EventArgs args)
{
System.Reflection.MethodInfo mi = typeof(EpiBaseForm).GetMethod(“handleToolClick”, System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
mi.Invoke(MainController, new object[] { “RefreshTool”, new Infragistics.Win.UltraWinToolbars.ToolClickEventArgs(MainController.MainToolManager.Tools[“RefreshTool”], null) });
}
}
Thanks for helping out!!