- 浏览: 145534 次
- 性别:
- 来自: 成都
文章分类
最新评论
以前我听说过一个软件科技公司,写了一个控件,只要在那个软件里面,输入了特殊字符,比如“!,&,^,%,$”,在进行数据交互的时候,就会跳出一个"非法字符操作",而在前不久,我进入了一个科技公司,这家公司也是做winform的,专做大his,健康档案系统的。而在这里面,我就想了一年前朋友们提过非法字符的提示。
我用了一天多的时间,写了一个winform的特殊字符判断的控件,里面判断了winform的十几种常见文本内容。
该控件,分两种,一种是只穿控件名,还有种传整个form窗体。
而方法里面,是用的多态,才参数,vadite(string[],From),或者vadite(From)
判断的控件有:
/// <summary>
/// 单选框
/// </summary>
public static bool validateRadioButton(string[] arr,System.Windows.Forms.Form frm)
{
}
/// <summary>
/// 复选框
/// </summary>
public static bool validateComboBox(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// 检查文本框
/// </summary>
public static bool validateTextBox(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// 检查下拉框
/// </summary>
public static bool validateListBox(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// 按钮
/// </summary>
public static bool validateButton(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// lable
/// </summary>
public static bool validateLabel(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// linkLable
/// </summary>
public static bool validateLinkLabel(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// CheckedListBox
/// </summary>
public static bool validateCheckedListBox(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// RichTextBox
/// </summary>
public static bool validateRichTextBox(string[] arr, System.Windows.Forms.Form frm)
{
}
/// <summary>
/// 所有控件
/// </summary>
public static bool validateRichAllControls(string[] arr, System.Windows.Forms.Form frm)
{
}
//查询控件下面的子控件数据
public static bool validateRichAllControlsByControls(string[] arr, System.Windows.Forms.Control control)
{
}
还有就是传这个窗体,同时,传入的窗体里面有以下控件容器,也会递归去查找他下面的所有子控件的text.进行判断
if (frm.Controls[i] is Panel)
{
return validateRichAllControlsByControls(arr,frm.Controls[i]);
}
if (frm.Controls[i] is GroupBox)
{
return validateRichAllControlsByControls(arr,frm.Controls[i]);
}
if (frm.Controls[i] is TabControl)
{
return validateRichAllControlsByControls(arr,frm.Controls[i]);
}
if (frm.Controls[i] is SplitContainer)
{
return validateRichAllControlsByControls(arr,frm.Controls[i]);
}
if (frm.Controls[i] is FlowLayoutPanel)
{
return validateRichAllControlsByControls(arr,frm.Controls[i]);
}
if (frm.Controls[i] is TableLayoutPanel)
{
return validateRichAllControlsByControls(arr,frm.Controls[i]);
}
而上面的arr,就是一个string类型的特殊字符数组。这个数组,自己可以定义。
这里有两个调用这个空间的例子
string[] arr = new string[] { "'", "?", "#", "!", "/", "&" };
if (SPValidate.FrmSPValidate.validateRichAllControls(this) == true)
{
MessageBox.Show("通过");
}
else
{
MessageBox.Show("有特殊字符!");
}
// 或者之定义特殊字符
if (SPValidate.FrmSPValidate.validateTextBox(arr, this) == true)
{
MessageBox.Show("通过");
}
else
{
MessageBox.Show("有特殊字符!");
}
使用方法,首先将这个控件引用到你的项目里面。然后就直接调用里面的方法。
- SPValidate.zip (2.7 KB)
- 下载次数: 8
发表评论
-
SQL Server 2008 R2 中英文 开发版/企业版/标准版 链接地址
2015-01-19 11:08 1012SQL Server 2008 R2 中英文 开发版/企业版/ ... -
C# SQLSERVER2008数据库备份和还原的两种方法 (有进度条)
2013-06-21 11:01 2069C# SQLSERVER2008数据库备份和还原的两种方 ... -
编程中 word 所有属性
2013-05-15 15:10 5995word文档工程变量的 //合并单元格 tab ... -
C# 海量数据增加和修改
2013-05-03 14:20 934对于海量数据的插入和更新,ADO.NET确实不如JDBC做到 ... -
DataGridView添加行数据 下拉框
2013-05-02 16:53 5638DataGridView控件在实际应用中非常实用,特别需要表 ... -
C#的web Service 调用的简单例子
2013-01-10 15:18 1287是webservice.就概念上来说,可能比较复杂,不 ... -
字体号数 像素 换算
2012-10-10 09:57 1242英文字体的1磅,相当于1/72 英寸,约等于1/2.8mm。1 ... -
编程的三种循环
2011-12-20 10:37 955大家都应该知道,其实java和C#都出自同师门的。虽然他们是不 ... -
农历,阳历 倒计时源码
2011-11-15 13:49 1017自己没事写了一个倒计时,里面有每年阳历的倒计时和农历的倒计时。 ... -
常用的正则表达式
2011-08-11 10:34 717常用的验证字符串的正则表达式。(电话,邮箱,数字,I ... -
iis发布网站
2011-07-27 10:25 814本人自己写的,给大家参考的。 1.安装iis(网络上下载 ... -
鼠标和键盘事件
2011-07-15 11:28 1099鼠标事件有11个,常用八个,都不用说了。click,Doubl ... -
winform读写ini配置文件
2011-07-14 11:29 1506public static string re ... -
winform 增删改查
2011-07-13 16:27 1891增删改,是一个样的指令: //添加物品 ... -
winform中的datagridview数据添加方式
2011-07-13 16:10 5118winform中的datagridview数据添加方式,在我现 ... -
Winform的dataGridView中添加序号
2011-07-13 15:40 6437dataGridView的RowPostPa ... -
vs多级树动态加载
2011-06-25 22:37 1042private void LoadCategoryTree ... -
VS2008 验证控件的用法
2011-05-23 11:09 3864ASP.NET为开发人员提供了 ... -
<meta name="description" content="string"/> 用法
2011-03-16 11:59 855一、语法: <meta name="nam ... -
判断中英文数字等混合字符串的截取固定长度值的字符串
2011-03-03 14:26 2336该方法适用余很多中英文混合的长度的字符串截取,比 ...
相关推荐
本文将深入探讨如何使用C#语言在Visual Studio 2010环境下创建一个自定义的"WinForm IP地址输入框控件"。 标题 "WinForm IP地址输入框控件" 指的是一个专门设计用于输入IPv4地址的控件,它旨在模仿Windows操作系统...
"winform插入特殊字符窗体"是一个这样的实例,它提供了一个方便的界面,让用户能够轻松地在文本输入中插入特殊字符。这个窗体设计用于帮助用户在不熟悉Unicode编码或者找不到特定键盘快捷键的情况下,快速找到并插入...
在.NET Framework的Windows Forms(WinForm)开发中,创建自定义控件是常见的需求,以满足特定界面设计或功能扩展。本示例介绍了一个模仿电脑IP地址输入的用户控件,该控件允许用户像在操作系统中配置网络设置一样,...
综上所述,限制WinForm `TextBox`输入特殊字符可以通过捕获并处理`KeyPress`事件来实现,通过对用户输入进行实时检查,确保输入符合预设的规则。通过扩展和组合不同的事件处理,我们可以构建出强大的输入验证机制,...
例如,如果你有一个TextBox控件在用户控件中,你可以在窗体加载时将一个字符串值传递给用户控件,然后用户控件设置TextBox的Text属性。 ```csharp public partial class UserControl1 : UserControl { public User...
Winform 中关于 ComboBox 控件使用详解 ComboBox 控件是 Winform 中常用的控件之一,用于提供用户选择选项的列表。下面是关于 ComboBox 控件使用的详解。 添加/删除 ComboBox 内容 1. 在 Combo Box 控件属性的 ...
本文将详细介绍一个基于 C# 和 Winform 技术开发的验证码控件,此控件允许用户自定义验证码中的字符以及字符长度。验证码是网站或应用程序中常见的安全措施之一,它通过要求用户输入一段随机产生的文本或数字来验证...
3. 设置控件编码:对于Winform中的控件,如TextBox,可以设置其AutoDetectUnicode属性,让控件自动检测字符串的编码;或者在显示字符串时,使用适当的Encoding进行转换。 4. 数据库编码匹配:确保应用程序使用的...
在C# WinForm开发中,有时我们希望设计出更加美观、个性化的用户界面,而系统自带的控件可能无法满足这种需求。这时,我们就需要创建自定义控件来实现特定的视觉效果。"c# winform 超漂亮按钮 控件"就是这样一个案例...
正则表达式(Regular Expression)是用一种特定的模式来匹配字符串的语法,由各种字符和特殊符号组成。例如,`^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$`是一个常用的正则表达式,用于验证电子邮件地址的格式...
本主题聚焦于“winform自定义日期控件”,这通常指的是开发人员为了满足特定需求而创建的、具有特定功能或样式日期选择功能的自定义控件。在标准的WinForm库中,DateTimePicker控件是用于选择日期和时间的标准组件,...
在.NET Framework中,WinForm应用程序开发经常会用到各种控件来增强用户界面的交互性。"winform日历控件"就是其中之一,它允许用户在界面上选择日期,常用于输入日期或者展示日程安排等场景。在描述中提到的是通过`...
C# WINFORM 控件双向绑定少为人知的秘密 在 WinForm 开发中,控件双向绑定是一个常见的问题。双向绑定指的是控件的值与数据源的值保持同步,当控件的值发生变化时,数据源的值也会相应地变化,反之亦然。今天,我们...
在"winform窗体验证控件"中,可能有一个`RegexValidator`类,它接收一个正则表达式字符串,然后在验证过程中与用户输入进行匹配。 在使用这些自定义验证控件时,开发者可以将它们添加到窗体上的任何需要验证的控件...
在Windows Forms(Winform)开发中,为了处理大量数据并提供良好的用户体验,分页控件是一种必不可少的工具。本文将详细介绍如何在Winform应用中使用分页控件,并结合SQL数据库进行数据操作。 首先,Winform分页...
在.NET框架下,WinForm应用开发中,我们有时需要创建自定义控件以满足特定的用户界面需求。标题“自定义winform接收数字控件”指的是一个专为输入数字设计的自定义Windows Forms控件。这个控件可能是一个DLL类型文件...
在.NET Framework中,WinForm是一种常用的桌面应用程序开发平台,它基于Windows API,提供了一套丰富的控件和事件处理机制。本知识点将详细讲解如何在WinForm应用中自定义分页控件,以及与之相关的技术点。 首先,...
"C#代码高亮的WinForm的TEXTBOX控件"这个主题,主要涉及如何在WinForms应用中创建一个能够对输入的C#代码进行语法高亮的TextBox替代品。这通常通过自定义控件或者使用第三方库来实现。 首先,我们可以利用IC#Code....
这里会涉及到字符串处理,正则表达式或者转换成数字进行判断,然后根据结果决定是否取消输入(通过`CancelEventArgs.Cancel`属性)。 总结起来,这个"winform数字输入控件带源码"的示例提供了自定义数字输入框的...