自定义类似MessageBox小窗体操作

1、实际小窗体界面如下

2、代码如下

private void InputBox(string caption,string orderNo)
        {
            Form InputForm = new Form();
            InputForm.MinimizeBox = false;
            InputForm.MaximizeBox = false;
            InputForm.StartPosition = FormStartPosition.CenterScreen;
            InputForm.Width = 375;
            InputForm.Height = 236;
            InputForm.Text = "经营分析";
            InputForm.MaximizeBox = false;
            InputForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;

            TextBox tbE = new TextBox();
            tbE.Left = 20;
            tbE.Top =20;
            tbE.Width = 300;
            tbE.Height = 120;
            tbE.Multiline = true;

            tbE.Parent = InputForm;
            tbE.Text =caption;
            tbE.SelectAll();

            Label lab = new Label();
            lab.Left = 20;
            lab.Top = 145;
            lab.Height = 20;
            lab.Width = 300;
            lab.Parent = InputForm;
            lab.Text = "(提示,输入的内容限定为500个字符以内!)";

            Button btnok = new Button();
            btnok.Left =60;
            btnok.Top = 170;
            btnok.Parent = InputForm;
            btnok.Text = "确定";
            InputForm.AcceptButton = btnok;//回车响应
            btnok.DialogResult = DialogResult.OK;

            Button btncancal = new Button();
            btncancal.Left = 170;
            btncancal.Top = 170;
            btncancal.Parent = InputForm;
            btncancal.Text = "取消";
            btncancal.DialogResult = DialogResult.Cancel;
            try
            {
                if (InputForm.ShowDialog() == DialogResult.OK)
                {

                    if (tbE.Text.Trim().Length > 500) {
                        MessageBox.Show("输入的字符长度,最大不能超过         500!","温馨提示");
                        return;
                    }
                    if (String.Compare(caption, tbE.Text.Trim(), true) != 0)
                    {
                        StringBuilder strWhere = new StringBuilder();
                        string mebo = tbE.Text.Trim().Length > 50 ? tbE.Text.Trim().Substring(0, 45) + "...." : tbE.Text.Trim();
                        strWhere.AppendFormat(@" UPDATE TA_CurrencyQueryEx_Exception SET YCRemark=N‘{0}‘, UpdateBy=‘{1}‘, UpdateDT=‘{2}‘
                WHERE OrderNo=‘{3}‘ ", tbE.Text.Trim(), SessionAuth.UserID, DateTime.Now, orderNo);
                       WinSrv.ExecuteNonQuery(strWhere.ToString(), new Object[] { });
                       txt_Col424.Text = SessionAuth.UserName;
                       txt_Col425.Text = DateTime.Now.ToString();
                       txt_Col423.Text = mebo;
                       string logInfo = "运单号 " + orderNo + "的督察分析信息,被" + SessionAuth.UserName+"修改";
                       ClsDatabase.gSetSystemLog("经营分析", logInfo, "督察分析");

                    }

                }
            }
            finally
            {
                InputForm.Dispose();
            }
        }

时间: 2024-10-22 18:10:19

自定义类似MessageBox小窗体操作的相关文章

Winform跨窗体操作控件(使用委托)

Winform跨窗体操作控件是winform开发中很常见的形式,最常见且简单有效的方式便是使用委托的方式来进行操作,下面我将通过一个小实例来说明如何使用委托跨窗体实现控件操作. 实例介绍:两个窗体,Form1按钮打开Form2,然后在Form2的TextBox输入值在Form1的TextBox中显示出来. 一.项目结构 Form1窗体设计: Form2窗体设计: 二.代码实现 在Form2的代码中声明一个委托(写在Form2类外)-> public delegate void ChangeFor

Android UI之自定义——类似iOS的Tabbar

Android UI之自定义--类似iOS的Tabbar Tabbar最早出现在iOS,iOS中的TabBarController实现了这个功能,开发起来相当简单.现在的APP,大多数都会使用Tabbar来作为应用的功能导航,界面简单清晰.那么Android常见的实现是通过RadioGroup来实现,今天将带来自定义实现,补充RadioGroup实现的不足. 先看看常见的软件中的使用: 这个是高铁管家APP,大家应该非常熟悉.这个APP的首页底部就是一个类似iOS的Tabbar.这里就不多举例子

C# 委托实例(跨窗体操作控件)

原文地址 http://blog.csdn.net/bdstjk/article/details/7004035 FORM1(一个名为“打开form2”的button控件) FORM2(一个名为“改变form1颜色“的button控件) 启动时,FORM1中点击button控件“打开form2””使FORM2显示出来. 点击FORM2中的“改变form1颜色”后,Form1中颜色改变. 完整代码 1 using System; 2 using System.Collections.Generic

跨窗体操作

Users uuu = new UsersData().SelectUser(uname, pwd); 跨窗体操作的时候,如果点开第二个窗体那么第一个窗体就要关闭,但是,一旦关闭第一个窗体那么第二个也会关闭,因为主窗体一关,其余的子窗体都会随着关闭,所以,要使用控件额属性,进行隐藏例如: Form2 f2 = new Form2(); f2.Show(); this.Visible = false; 在第二个通过第二个窗体来操控第一个窗体 Form1 F1 = null; public Form

Android自定义类似ProgressDialog效果的Dialog

Android自定义类似ProgressDialog效果的Dialog. 方法如下: 1.首先准备两张自己要定义成哪样子的效果的图片和背景图片(也可以不要背景). 如我要的效果: 2.定义loading_dialog.xml布局文件(这里你也可以按自己的布局效果定义,关键是要有个imageView): [html] view plaincopy <?xml version="1.0" encoding="utf-8"?> <LinearLayout

帝国cms调用栏目自定义字段(栏目简介)如何操作

开源的cms就像一个操作系统,可以满足大部分人的需求,如果你想增加一些特殊的功能,那就二次开发呗,就像APP一样.帝国cms默认的栏目是没有调用栏目自定义字段的,我们可以增加一些概述类的文字,让读者对这个页面有个大概的了解,挺高一些用户体验. 帝国cms调用栏目自定义字段(栏目简介)如何操作呢? 栏目自定义字段调用说明 内置调用栏目自定义字段函数:ReturnClassAddField(栏目ID,字段名),栏目ID=0为当前栏目ID.取多个字段内容可用逗号隔开,例子: 取得'classtext'

自定义类StyleSheet跨浏览器操作样式表中的规则

这是群里网友地瓜提供的一个类,不熟悉样式的浏览器差异的可以看看 /** * Stylesheet.js: utility methods for scripting CSS stylesheets. * * This module defines a Stylesheet class that is a simple wrapper * around an element of the document.styleSheets[] array. It defines useful * cross

struts2 自定义拦截,防止非法操作

<package name="defaults" extends="struts-default"> <interceptors> <interceptor name="login" class="com.zqgame.interceptor.CheckLoginInterceptor" /> <interceptor-stack name="myinterceptor&qu

C# 委托实例(跨窗体操作控件)

在C#里面却是可以不用自定义消息这么复杂的方法来实现跨窗体调用控件,C#有更好的办法就是委托. 效果描述:有两个窗体,FORM1(一个名为“打开form2”的button控件)和FORM2(一个名为“改变form1颜色“的button控件).启动时,FORM1中点击button控件“打开form2””使FORM2显示出来.点击FORM2中的“改变form1颜色”后,Form1中颜色改变. 一.在Form2里面:       首先声明一个委托和委托实例Form2类外 public delegate