Я работаю с Sage 200 Summer Edition, и у меня есть проблема с куском кода. Мне нужно иметь возможность выполнить нулевую проверку на Sage.Controls.Button, но даже если я помещу его в переменную, он все равно будетаварийно завершить то, что называется изменяемой кнопкой в окнах.
Хотя большинство людей верят, что это пустая проблема, и как ее решить, это не так уж и просто. Я имею дело с объектами мудреца, которые у меня есть.выполнил поиск существующих ссылок для функции нижележащего управления и не может найти никаких документов об объекте или о том, как обрабатывать нуль
Если я просто сделаю следующее
var control = (Sage.Common.Controls.Button) Form.FindControlByName ("saveButton"). UnderlyingControl;
И выполнить оператор if, который по-прежнему будет аварийно завершать работу.Любые идеи, как справиться с этим.
public override void ConfigureForm()
{
var sopOrderReturnLine = (Sage.Accounting.SOP.SOPOrderReturnLine) Form.BoundObjects[0];
_itemDescription = sopOrderReturnLine.ItemDescription;
if (sopOrderReturnLine.SOPOrderReturn.SpareBit1)
{
var button = new Button();
button.Name = "extraInfoButton";
button.Text = "Extra Info...";
button.Alignment = ButtonAlignmentInContainer.Left;
var buttonPanel = (ControlPanel) Form.FindControlByName("buttonPanel").UnderlyingControl;
buttonPanel.Controls.Add(button);
button.Click += new EventHandler(button_Click);
}
var control = (Sage.Common.Controls.Button)Form.FindControlByName("saveButton").UnderlyingControl;
if (control !=null)
{
var saveButton = (Sage.Common.Controls.Button)Form.FindControlByName("saveButton").UnderlyingControl;
saveButton.BeforeClick += new System.ComponentModel.CancelEventHandler(saveButton_BeforeClick);
}
}