textBox中不填数据时显示[0.00],填入数据后,按小数点右对齐,没有小数位则自动补点[.]和两位小数[00],整数部分每三位有分节号[,].如何实现?
解决方案 »
- 一个很奇怪的问题,大家来帮帮忙。。。
- C#调用Java写的webservice问题
- 求解数学模型!急等!
- 请问在C++中的handle在C#是如何用
- “右键菜单“问题大家进来帮忙看看
- DataGrid问题!
- 谁有DevComponents.DotNetBar 4.0.0.3的安装程序?急!!!
- SQL Server 的SqlConnection问题
- 如何修改一个快捷方式对于的图标?
- ★★★■■■一个好奇怪的问题,特招聘精于怪异现象和问题的武林同道解答之,给100分!!!!★★★■■■
- 程序出错了:"无法找到列0",怎么回事?谢谢,在线等
- (.Net C# WEb)如何判断页面的事件是来自本页面哪个控件的?
double d = 0;
textBox1.Text = d.ToString("0.00");
using System.Windows.Forms;namespace Test
{
/// <summary>
/// DataBinding 的摘要说明。
/// </summary>
public class DataBinding : Binding
{
#region 自定义变量
string formatString = "F";
#endregion #region 构造函数
public DataBinding(string propertyName,object dataSource,string dataMember) : base(propertyName,dataSource,dataMember)
{
}
#endregion #region 属性
public string FormatString
{
set
{
formatString = value;
}
}
#endregion #region 虚函数覆写
protected override void OnFormat(ConvertEventArgs cevent)
{
base.OnFormat (cevent); double d = Convert.ToDouble(cevent.Value);
if(d == 0.0)
cevent.Value = "";
else
cevent.Value = d.ToString("F");
} protected override void OnParse(ConvertEventArgs cevent)
{
if(cevent.Value.ToString() == "")
cevent.Value = "0.0"; base.OnParse (cevent);
}
#endregion
}
}
这个是继承的binding,你可以在OnFormat和OnParse里做自己的修改。
OnFormat是把数据显示到textbox上时的事件,OnParse是把textbox上数据写回绑定的事件。绑定:DataBinding binding = new DataBinding(propertyName,datasource,dataMember);
textBox.Databindings.add(binding);
重写一下TextBox吧
textBox1.Text = d.ToString("#,##0.00");
在textBox 失去焦点时候。调用