FineUI 官方论坛

标题: 关于Window的高与宽 [打印本页]

作者: Tiger    时间: 2013-9-17 22:48
标题: 关于Window的高与宽
对于Window的高与宽,可以在aspx里直接写好,也可以在C#中设定,但是如果我们是在写一个控件,控件里想用wndow,就会有一个问题
在控件中new 出来的window,我没有能显示出来,所以只能在页面中先放一个Window,以参数的形式传给控件让控件操作这个window,但是又有了新的问题,在控件的方法中直接调用 window.Height, width之类的参数,在显示窗体的时候,可以生效,但是如果在控件中包括了按钮,把显示窗体放在按钮的事件中来设置宽度,显示出来的窗体又胖又矮,显然高与宽的参数没有生效
求解

作者: Tiger    时间: 2013-9-17 22:52
是不是和PostBack有关?
作者: Tiger    时间: 2013-9-18 14:27
控件代码如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using FineUI;

namespace EmptyProjectNet40
{
    public class PopWindow : ControlBase
    {
        private Window popWindow = null;
        public Window Window
        {
            set { popWindow = value; }
        }

        public void MakeStructure()
        {
            //popWindow.Height = System.Web.UI.WebControls.Unit.Pixel(500);
            //popWindow.Width = System.Web.UI.WebControls.Unit.Pixel(500);
            Button button = new Button();
            button.Text = "dsffd";
            button.ID = "btn";
            this.Controls.Add(button);
            button.Click += new EventHandler(button_Click);
        }

        void button_Click(object sender, EventArgs e)
        {
            foreach (object att in popWindow.Attributes)
            {
                int i = 00;
            }
            popWindow.Height = System.Web.UI.WebControls.Unit.Pixel(50);
            popWindow.Width = System.Web.UI.WebControls.Unit.Pixel(50);
            
            popWindow.Hidden = false;
            //System.Threading.Thread.Sleep(10);
           // popWindow.EnableIFrame = true;
            popWindow.Title = "aabbbbba";
            popWindow.IFrameUrl = "http://www.biadu.com";
            popWindow.Width = System.Web.UI.WebControls.Unit.Pixel(500);
            
        }

        public void Show()
        {
           
        }
    }
}


调用部分如下


protected void Page_Init(object sender, EventArgs e)
        {

            //Out window = new Out();
            //window.Window = popWindow;
            //form1.Controls.Add(window);
            //window.Show();

            PopWindow win = new PopWindow();
            win.Window = popWindow;
            form1.Controls.Add(win);
            win.MakeStructure();

        }







欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4