본문 바로가기
DevExpress
2014.05.17 13:18

Input Messagebox 함수로 구현

다물칸 주소복사
조회 수 685 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
Extra Form
구분 팁&트릭
출처 http://blog.naver.com/mastre50?Redirect=Log&logNo=40192339854

일반 콘트롤은 위 출처를 참고하시면 됩니다. 

아래는 위 출처 참고해서 DevExpress용으로 만들었습니다. 

함수보시면 아시겠지만 모든 라벨링 수정이 가능합니다. 


Visual Basic에 있는 InputBox가 왜 C#에는 없어졌는지.. 쯥

20140517_131654.png


Usage: InputBox(this, "보건소 코드로 찾기", "보건소 코드를 입력하세요", ref sPHCCode, "찾기", "취소");


public static DialogResult InputBox(XtraForm parent, string Title, string PromptText, ref string value, string OKText = "OK", string CancelText = "Cancel")
        {
            XtraForm form = new XtraForm();
            LabelControl lblPrompt = new LabelControl();
            TextEdit txtValue = new TextEdit();

            SimpleButton btnOK = new SimpleButton();
            SimpleButton btnCancel = new SimpleButton();

            form.Text = Title;
            lblPrompt.Text = PromptText;
            txtValue.Text = value;

            btnOK.Text = OKText;
            btnCancel.Text = CancelText;
            btnOK.DialogResult = DialogResult.OK;
            btnCancel.DialogResult = DialogResult.Cancel;

            form.AcceptButton = btnOK;
            form.CancelButton = btnCancel;

            lblPrompt.SetBounds(9, 20, 373, 13);
            txtValue.SetBounds(12, 36, 372, 20);
            btnOK.SetBounds(228, 72, 75, 23);
            btnCancel.SetBounds(309, 72, 75, 23);

            lblPrompt.AutoSize = true;
            txtValue.Anchor = txtValue.Anchor | AnchorStyles.Right;
            btnOK.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
            btnCancel.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;

            form.ClientSize = new Size(396, 107);
            form.Controls.AddRange(new Control[] { lblPrompt, txtValue, btnOK, btnCancel });
            form.ClientSize = new Size(Math.Max(300, lblPrompt.Right + 10), form.ClientSize.Height);
            form.FormBorderStyle = FormBorderStyle.FixedDialog;
            form.StartPosition = FormStartPosition.CenterParent;
            form.MinimizeBox = false;
            form.MaximizeBox = false;
            
            DialogResult dialogResult = form.ShowDialog(parent);
            value = txtValue.Text;

            return dialogResult;
        }