.net 无法隐式转换类型';字符串';至';System.Web.UI.WebControls.Unit';

.net 无法隐式转换类型';字符串';至';System.Web.UI.WebControls.Unit';,.net,.net,在下面的代码中,我遇到了如下错误:无法将类型“string”隐式转换为“System.Web.UI.WebControls.Unit”。如何解决这个问题 protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { RadTab tab = new RadTab(); tab.Text = string.Format("New Page {0}", 1)

在下面的代码中,我遇到了如下错误:无法将类型“string”隐式转换为“System.Web.UI.WebControls.Unit”。如何解决这个问题

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        RadTab tab = new RadTab();
        tab.Text = string.Format("New Page {0}", 1);
        RadTabStrip1.Tabs.Add(tab);

        RadPageView pageView = new RadPageView();
        pageView.Height = "100px";
        RadMultiPage1.PageViews.Add(pageView);

        BuildPageViewContents(pageView, RadTabStrip1.Tabs.Count);
        RadTabStrip1.SelectedIndex = 0;
        RadTabStrip1.DataBind();

    }
}
这里我得到了一个错误。pageView.Height=“100px”

如何解决此问题?

更改

pageView.Height = "100px";


Height
的类型为
Unit
,因此您需要为其指定一个同样属于
Unit
类型的值。要创建类型为
Unit
的对象,需要使用
new
调用
Unit
构造函数;其中一个构造函数接受
单元
要表示的像素数作为参数。

因为
高度
不是字符串类型,而是UnitSystem.Web.UI.WebControls.Unit
在此处输入代码

可以使用以下静态方法转换为单位:

  • 单位像素(100);//100像素
  • 单位百分比(10);//10%
  • 单位点(100);//100磅
  • Unit.Parse(“100px”);//100像素
单元结构没有从字符串的显式或隐式转换,因此,出现您正在观察的错误。

替换
“100px”带有

new System.Web.UI.WebControls.Unit("100px");

错误消息说明了一切。您需要以更具体的方式将值转换为
System.Web.UI.WebControls.Unit
。幸运的是,
单元
类型具有以下功能:

pageView.Height = new System.Web.UI.WebControls.Unit("100px");

控件上的高度为类型。你想用

pageView.Height = Unit.Pixel(100);
本文档介绍如何使用单位。就你而言:

pageView.Height = new Unit("100px");
pageView.Height = new Unit("100px");