2015年6月11日 星期四

ASP.NET Using foreach loop with DataList on Submit

ASP.NET Using foreach loop with DataList on Submit
在送出之前將 DataList 的 Items 使用迴圈取出

HTML:
<form id="form1" runat="server">
<asp:DataList ID="DataList1" runat="server" Width="99.9%" RepeatDirection="Vertical">
                    <ItemStyle BorderWidth="1" />
                    <ItemTemplate>
                        <asp:HiddenField ID="hifDlobjectype_code" runat="server" Value="A1234" />
                    </ItemTemplate>
                </asp:DataList>

<asp:Button ID="btnSubmit" runat="server" Text="送出" Width="100px" OnClick="btnSubmit_Click" />
</form>

C#:
protected void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {
                DataList dl = DataList1;

                foreach (DataListItem dli in dl.Items)
                {
                    string hifDlobjectype_code = ((HiddenField)dli.FindControl("hifDlobjectype_code")).Value;
                }
            }
            catch (Exception)
            {

                throw;
            }
        }

2015年6月10日 星期三

ASP.NET Timer

ASP.NET Timer

網頁每隔10秒自動重新整理網頁,搭配UpdatePanel使用


HTML:
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <asp:Timer ID="Timer1" runat="server" Interval="10000" OnTick="Timer1_Tick"
        oninit="Timer1_Init">
    </asp:Timer>
    <div>
        <asp:Label ID="Label1" runat="server" Text="網頁開啟時間:"></asp:Label>
        <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
        <p>
        </p>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
            </Triggers>
            <ContentTemplate>
                <asp:Label ID="Label3" runat="server" Text="每隔10秒重新整理:"></asp:Label>
                <asp:Label ID="Label4" runat="server" Text=""></asp:Label>
            </ContentTemplate>
        </asp:UpdatePanel>
        <p>
        </p>
    </div>
    </form>
</body>

C#:
protected void Page_Load(object sender, EventArgs e)
{
    Label2.Text = DateTime.Now.ToString();
    Label4.Text = DateTime.Now.ToString();
}

protected void Timer1_Init(object sender, EventArgs e)
{
    Timer1.Interval = 10000; //每10秒執行一次
}

protected void Timer1_Tick(object sender, EventArgs e)
{
    Label4.Text = "UpdatePanel1 refreshed at " + DateTime.Now.ToString();
}

2015年6月3日 星期三

ASP.NET Access Master Page Control

Access Master Page Control



Get Master1-TextBox1
C#:
MasterPage master1 = Master.Master;
TextBox textbox1 = master1.FindControl("TextBox1") as TextBox;

Get Master2-TextBox2
C#:
ContentPlaceHolder mpContentPlaceHolder = (ContentPlaceHolder)master1.FindControl("ContentPlaceHolder1");
if (mpContentPlaceHolder != null)
{
    TextBox textbox2 = mpContentPlaceHolder.FindControl("TextBox2") as TextBox;
}