文章类型: .NET
关键词: net,C#,ArgumentException,emSize,无效,应该大于,0,且小
内容摘要: System.ArgumentException: “0”的值对于“emSize”无效。“emSize”应该大于 0 且小

System.ArgumentException: “0”的值对于“emSize”无效。“emSize”应该大于 0 且小

2018/9/12 9:44:58    来源:apple    阅读:

当窗体最小化时,引发了下面的异常。经过分析,


System.ArgumentException: “0”的值对于“emSize”无效。“emSize”应该大于 0 且小于或等于 System.Single.MaxValue。

参数名: emSize

 

 newx = (float)width / 369;

      newy = (float)height / 218;



需要加上   float  转换的问题


当窗体最小化时,引发了窗体的SizeChanged事件,即

private void BrowseDeviceForm_SizeChanged(object sender, EventArgs e)

在事件中添加判断是否为最小化窗体的大小改变引发的语句,如下

bool bFormMinimized = false;

protected override void OnSizeChanged(EventArgs e)
{
    base.OnSizeChanged(e);
    //目的:为了解决当前窗体最小化时出现的[System.ArgumentException: “0”的值对于“emSize”无效。“emSize”应该大于 0 且小]的异常错误
    if (!bFormMinimized)
    {
        if (dicControlsAttribute.Count > 0)
        {
            ChangeControlsInitiate(this.Controls[0]);
            ChangeCurrentControlAttr(this.splitContainer2.Panel2);
            //dOldPanelWidth = this.splitContainer2.Panel2.Width;
            //dOldPanelHeight = this.splitContainer2.Panel2.Height;
        }
    }
}

private void BrowseDeviceForm_SizeChanged(object sender, EventArgs e)
{
    //目的:为了解决当前窗体最小化时出现的[System.ArgumentException: “0”的值对于“emSize”无效。“emSize”应该大于 0 且小]的异常错误
    if (this.WindowState == FormWindowState.Minimized)
    {
        bFormMinimized = true;
        //MessageBox.Show("最小化了");
    }
}


↑ 上一篇文章:VC基于MFC的OCX中使用对话框显示GIF动画图片和使用时间定时器 关键词:VC,MFC,OCX,DLL,资源模块,句柄,切换,GI.. 发布日期:2018/9/7 16:13:04
↓ 下一篇文章:.net报“System.MissingMethodException: Method not found(找不到方法)”错误的解决方法 关键词:.net,System,MissingMethodExc.. 发布日期:2018/9/14 15:48:45
相关文章:
C#中的.net 4.0 ValidateRequest="false" 无效的解决办法 关键词:C#,.net,4.0,ValidateRequest="false",无效 发布日期:2016-04-26 18:12
ASP.NET中的分页剖析(三) 关键词:C#,ASPX,ASP,.NET中,分页,自定义 发布日期:2015-07-29 12:22
ASP.NET中的分页剖析(四) 关键词:C#,ASPX,ASP,.NET中,分页,自定义 发布日期:2015-07-29 12:23
相关目录:.NET软件开发
我要评论
正在加载评论信息......