여기의 개체는 UI를 업데이트하는 것입니다. 나는 클라이언트에서 일반적으로 이것을하지만,이 애플리케이션은 코드를 뒤에서 사용한다. 어쨌든 내 질문은 이러한 진술을 정리하려고하고 전략 패턴이 적절하다고 생각합니다. 나는 나를 위해 모든 일을 할 필요는 없지만, 당신이 나에게 몇 가지 포인터를 줄 수 있다면. 먼저 인터페이스를 작성한 다음 각 전략이 인터페이스를 구현합니까? 제네릭이 여기에 도움이됩니까? 어떤 유형의 메소드가 인터페이스에 있어야합니까? 나에게 어떤 일이 있어도 대단히 감사 할 것입니다. 당신은 인터페이스와 전략 패턴을 사용하려고하는 경우리팩터 도움 - 전략 패턴
if (someObject.Status == 'A') {
btnRecordCall.Enabled = false;
btnAddMailOrStatusAction.Enabled = false;
btnPayments.Enabled = false;
btnAddressMaint.Enabled = false;
btnFilter.Enabled = false;
btnAddCoverage.Enabled = false;
btnPolicyForms.Enabled = false;
lblIsArchived.Text = "********** THIS CLAIM HAS BEEN ARCHIVED **********";
} else if (someObject.Status == 'D') {
btnRecordCall.Enabled = false;
btnAddMailOrStatusAction.Enabled = false;
btnPayments.Enabled = false;
btnAddressMaint.Enabled = false;
btnFilter.Enabled = false;
btnAddCoverage.Enabled = false;
btnPolicyForms.Enabled = false;
lblIsArchived.Text = "- De-archive Request Pending";
} else {
btnRecordCall.Enabled = true;
btnAddMailOrStatusAction.Enabled = true;
btnPayments.Enabled = true;
btnAddressMaint.Enabled = true;
btnFilter.Enabled = true;
btnAddCoverage.Enabled = true;
btnPolicyForms.Enabled = true;
lblIsArchived.Text = "";
}
덕분에, 는 ~ CK
Stan. 구현의 execute 메소드에서 페이지 컨트롤에 대한 참조를 얻으려면 어떻게해야합니까? 페이지에 대한 참조를 전달하고 findcontrol ('someId')을 수행합니까? 또는 더 좋은 방법이 있습니까? – Hcabnettek
예, 페이지 자체에 대한 참조를 전달한 다음 이전에했던 것과 동일한 작업을 수행 할 수 있습니다. 예 : page.lblIsArchived.Text = ""; 생성자 또는 Execute 메서드에서 Page에 대한 참조를 전달할 수 있습니다. 그것까지 너. –