مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

khani

عضویت از 1394/08/26

مشکل در ثابت ماندن سایز گریدویو در asp.net

  • شنبه 10 بهمن 1394
  • 16:40
تشکر میکنم

سلام وقت بخیر

من برای یک قسمت از سایت از گریدویو استفاده کردم که با اس کیو ال دیتا سورس بایندش کردم.و رویداد rowcommand رو هم فعال کردم ولی وقتی اون رویداد اتفاق می افته سایز سلول های گریدویو به طرز بدی عوض میشه و کل صفحه رو میگیره.چند باری سرچ زدم و دیدم که تو رویداد برای هر ستون سایز تعریف میکنند ولی متاسفانه جواب نداد.ممنون میشم راهنمایی کنید دوستان

<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="id" OnRowCommand="GridView1_RowCommand" CellPadding="4" ForeColor="#333333" GridLines="None" Width="30px" OnRowDataBound="GridView1_RowDataBound">
                                            <rowstyle Height="20px" />
                                            <AlternatingRowStyle Height="20px" Width="20px" BackColor="White" ForeColor="#284775" />
                                            <Columns>
                                                <asp:BoundField DataField="id" HeaderText="ردیف" InsertVisible="False" ReadOnly="True" SortExpression="id" />
                                                <asp:BoundField DataField="name" HeaderText="نام" SortExpression="name" />
                                                <asp:BoundField DataField="family" HeaderText="نام خانوادگی" SortExpression="family" />
                                                <asp:BoundField DataField="code" HeaderText="کد شخص" SortExpression="code" />
                                                <asp:BoundField DataField="mobile" HeaderText="شماره همراه" SortExpression="mobile" />
                                                <asp:BoundField DataField="phone" HeaderText="تلفن" SortExpression="phone" />
                                                <asp:BoundField DataField="adres" HeaderText="آدرس" SortExpression="adres" />
                                                <asp:BoundField DataField="cod_posti" HeaderText="کد پستی" SortExpression="cod_posti" />
                                                <asp:BoundField DataField="email" HeaderText="ایمیل" SortExpression="email" />
                                                <asp:BoundField DataField="date_sabt" HeaderText="تاریخ ثبت" SortExpression="date_sabt" />
                                                <asp:CommandField EditText="حذف" ShowDeleteButton="True" ButtonType="Button" DeleteText="حذف" HeaderText="حذف" />
                                                <asp:ButtonField ButtonType="Button" CommandName="edit" HeaderText="ویرایش" ShowHeader="True" Text="ویرایش" />
                                            </Columns>
                                            <EditRowStyle BackColor="#999999" />
                                            <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" Wrap="False" />
                                            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                                            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
                                            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                                            <SortedAscendingCellStyle BackColor="#E9E7E2" />
                                            <SortedAscendingHeaderStyle BackColor="#506C8C" />
                                            <SortedDescendingCellStyle BackColor="#FFFDF8" />
                                            <SortedDescendingHeaderStyle BackColor="#6F8DAE" />
                                        </asp:GridView>

 این سورس گرید ویو هست. و این هم کد rowcommand:

 protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
    int rowIndex = Convert.ToInt32(e.CommandArgument);
    if (e.CommandName == "edit")
    {           
        GridViewRow row = GridView1.Rows[rowIndex];

        //Fetch value of Name.
        //string name = (row.FindControl("Name") as TextBox).Text;

        //Fetch value of Country
        Session["id"] = GridView1.Rows[rowIndex].Cells[0].Text.Trim();
        string cod = GridView1.Rows[rowIndex].Cells[0].Text.Trim();
        //cod = GridView1.Rows[rowIndex].Cells[1].Text.Trim();

        sabt_car = sabt.select_ashkhas(int.Parse(cod));
        Panel_ashkhas.Visible = true;
        Text_family.Text = sabt_car.Rows[0]["family"].ToString();
        Text_name.Text = sabt_car.Rows[0]["name"].ToString();
        Text_code.Text = sabt_car.Rows[0]["code"].ToString();
        Text_mobile.Text = sabt_car.Rows[0]["mobile"].ToString();
        Text_phone.Text = sabt_car.Rows[0]["phone"].ToString();
        Text_adres.Text = sabt_car.Rows[0]["adres"].ToString();
        Text_codposti.Text = sabt_car.Rows[0]["cod_posti"].ToString();
        Text_email.Text = sabt_car.Rows[0]["email"].ToString();

    }
}

 

پاسخ های این پرسش

تعداد پاسخ ها : 2 پاسخ
کاربر سایت

سید سادات

عضویت از 1394/02/22

  • شنبه 10 بهمن 1394
  • 21:12

سلام

شما width گریدتون رو به 3000  مقدار دهی کنید بعد برای دیوی که گردیدتون داخلش هست رو اور فلو  overflow:scroll بدهید مثال

 

 <div style="overflow:scroll" >
                <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource4" Width="1000px" AutoGenerateColumns="False" DataKeyNames="id">
                    <Columns>

کاربر سایت

khani

عضویت از 1394/08/26

  • شنبه 10 بهمن 1394
  • 22:01

مرسی ولی تست کردم نشد باز هم وقتی event اتفاق می افته سایزش بهم میریزه.راه دیگه ای ب نظرتون نمیرسه؟؟

 

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)