PDA

View Full Version : ویرایش یک رکورد در gride view ؟؟؟



farzad226
چهارشنبه 19 مهر 1391, 18:06 عصر
سلام . میخواستم بدونم چجوری میشه یک رکورد از گرید ویوو رو ویرایش کنم.

منظورم اینه که مثلا وقتی رکوردها نمایش داده میشن طرف بتونه روی هر رکوردی که خواست کلیک کنه و فیلدهای اون رکورد رو تغییر بده.

با تشکر

NOSRATGOLAB
چهارشنبه 19 مهر 1391, 18:30 عصر
<asp:GridView ID="student_grid" runat="server" AutoGenerateColumns="False"
DataKeyNames="id" Width="99%"
AllowPaging="True" AllowSorting="True" EmptyDataText="هیچ ترمی تعریف نشده است"
EnableTheming="True" BackColor="White" BorderColor="#DEDFDE"
BorderStyle="None" BorderWidth="1px" CellPadding="4" ForeColor="Black"
GridLines="Vertical" DataSourceID="SqlDataSource1" >

<RowStyle BackColor="#F7F7DE" />

<Columns>
<asp:BoundField DataField="id" HeaderText="کد ترم" InsertVisible="False"
ReadOnly="True" SortExpression="id">
</asp:BoundField>
<asp:BoundField DataField="name" HeaderText="عنوان ترم"
SortExpression="name" />
<asp:CommandField CancelText="انصراف" EditText="ویرایش" HeaderText="ویرایش"
ShowEditButton="True" UpdateText="ویرایش" />
<asp:CommandField HeaderText="حذف" ShowDeleteButton="True" DeleteText="حذف" />
</Columns>

<FooterStyle BackColor="#CCCC99" />
<PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
<SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />

<HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>



<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:OnlineTestDBConnectionString %>"
DeleteCommand="DELETE FROM [ot_term] WHERE [id] = @id"
UpdateCommand ="UPDATE [ot_term] SET [name] = @name WHERE [id] = @id"

SelectCommand="SELECT * FROM [ot_term]">


<DeleteParameters>
<asp:Parameter Name="id" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="name" Type="String" />

<asp:Parameter Name="id" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="name" Type="String" />

<asp:Parameter Name="id" Type="Int32" />
</InsertParameters>
</asp:SqlDataSource>

farzad226
چهارشنبه 19 مهر 1391, 18:38 عصر
کلا هیچی نفهمیدم. میشه بیشتر توضیح بدید؟

NOSRATGOLAB
چهارشنبه 19 مهر 1391, 19:23 عصر
تو این گریدویو ترم تحصیلی دارم با امکان ویرایش و حذف وقتی روی گزینه ویرایش کلیک میکنم میتونم عنوان ترم را عوض کنم

farzad226
چهارشنبه 19 مهر 1391, 19:48 عصر
اره من دقیقا همین رو میخوام . میشه به صورت تصویری روال انجام اینکا رو توضیح بدید ؟
من دیتا ها رو واکشی میکنم و د گرید ویوو نشون میده. یک ستون به نام ویرایش هم اضافه کردم. از اینجاش رو نمیدونم چیکار کنم؟

NOSRATGOLAB
چهارشنبه 19 مهر 1391, 20:24 عصر
اره من دقیقا همین رو میخوام . میشه به صورت تصویری روال انجام اینکا رو توضیح بدید ؟
من دیتا ها رو واکشی میکنم و د گرید ویوو نشون میده. یک ستون به نام ویرایش هم اضافه کردم. از اینجاش رو نمیدونم چیکار کنم؟
قسمت ویرایش به دلیل خط چهارم update command..... که درست کار میکنه


<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:OnlineTestDBConnectionString %>"
DeleteCommand="DELETE FROM [ot_term] WHERE [id] = @id"
UpdateCommand ="UPDATE [ot_term] SET [name] = @name WHERE [id] = @id"

SelectCommand="SELECT * FROM [ot_term]">


<DeleteParameters>
<asp:Parameter Name="id" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="name" Type="String" />

<asp:Parameter Name="id" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="name" Type="String" />

<asp:Parameter Name="id" Type="Int32" />
</InsertParameters>



</asp:SqlDataSource>
ce>

farzad226
چهارشنبه 19 مهر 1391, 20:36 عصر
اینی که گفتین رو فهمیدم . اما روال کار رو نفهمیدم باز !!!!
گرید ویوو من این دستورات رو نداره.

من باید ستونی که اضافه میکنم از چه نوعی باشه ؟؟

farzad226
چهارشنبه 19 مهر 1391, 20:39 عصر
منظورم اینکه چجوری اون سطر رو به حالت ویرایش ببرم؟

aliblue
چهارشنبه 19 مهر 1391, 20:51 عصر
در smart tag گریدویو(فلش کوچک بالا) باید enable editing را تیک بزنید.

farzad226
چهارشنبه 19 مهر 1391, 21:04 عصر
چون صفحه تحت وبه . گرید ویوو اون گزینه که گفتین نداره

orca13
چهارشنبه 19 مهر 1391, 22:32 عصر
درود!
تاجایی که من میدونم، شما اگه میخواید همون جا کاربر ادیت کنه (یعنی سطر بره تو مد ویرایش) باید از امکانات خودش (همون Enable Editing) استفاده کنی.
اما راه بهتر اینه که کاربر فیلد رو انتخاب کنه، بعد یه جای دیگه (مثلا یه صفحه دیگه، یه پنل زیر همون گرید یا...) ویرایش رو انجام بده، دستت کاملا بازه.

امیدوارم مفید بوده باشه پستم برات.
موفق باشی.

NOSRATGOLAB
پنج شنبه 20 مهر 1391, 04:29 صبح
منظورم اینکه چجوری اون سطر رو به حالت ویرایش ببرم؟
میشه کد قسمت گریدویو تونو بزارید ببینم تا بگم قسمت ویرایشو چجور بنویسید

aliblue
پنج شنبه 20 مهر 1391, 07:20 صبح
چون صفحه تحت وبه . گرید ویوو اون گزینه که گفتین نداره
ربطی به تحت وب بودن نداره.اگه برای نمایش داده ها از SqlDataSource استفاده کردی،باید Update Query رو هم نوشته باشی تا این گزینه توی گریدویو قابل انتخاب بشه.

farzad226
پنج شنبه 20 مهر 1391, 12:40 عصر
میشه کد قسمت گریدویو تونو بزارید ببینم تا بگم قسمت ویرایشو چجور بنویسید

این کد گرید ویوو هستش :

<asp:GridView ID="GridView1" runat="server"
style="z-index: 1; left: 317px; top: 51px; position: absolute; height: 133px; width: 188px">
<Columns>
<asp:CommandField HeaderText="Editt" ShowEditButton="True" ShowHeader="True" />
</Columns>
</asp:GridView>

farzad226
پنج شنبه 20 مهر 1391, 12:49 عصر
چون صفحه تحت وبه . گرید ویوو اون گزینه که گفتین نداره
ربطی به تحت وب بودن نداره.اگه برای نمایش داده ها از SqlDataSource استفاده کردی،باید Update Query رو هم نوشته باشی تا این گزینه توی گریدویو قابل انتخاب بشه.


من با دستور زیر وصل میشم به گرید ویوو :

GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();

farzad226
پنج شنبه 20 مهر 1391, 15:55 عصر
نمیشه با دستورات بالا اون حالت رو هم به وجود اورد ؟

NOSRATGOLAB
پنج شنبه 20 مهر 1391, 20:00 عصر
این کد گرید ویوو هستش :

<asp:GridView ID="GridView1" runat="server"
style="z-index: 1; left: 317px; top: 51px; position: absolute; height: 133px; width: 188px">
<Columns>
<asp:CommandField HeaderText="Editt" ShowEditButton="True" ShowHeader="True" />
</Columns>
</asp:GridView>

منظورم کل کد گرید ویو بود الان فقط دکمه ویرایشو گذاشتین بقیه فیلدها رو هم بزارین بالاخره یه سری فیلد میخاین ویرایش کنین دیگه

hr_3303
جمعه 21 مهر 1391, 18:21 عصر
سلام .من این برنامه رو از یکی دوستان تو همین انجمن گرفتم.ولی اسمش یادم نیست که بگم.فکر کنم با این مثال مشکلت حل بشه.

93894

با تشکر از دوستمون که زحمت این برنامه رو کشیدند.:تشویق:

farzad226
جمعه 21 مهر 1391, 18:51 عصر
وقتی روی ویرایش کلیک میشه اون سطر از حالت جمع و جور خودش در میاد و یک حالت پیش فرض میگیره . یعنی فیلد ادیت به اندازه ستون گرید ویوو میشه. راهی نداره فقط به اندازه همون نوشته اندازش تغییر کنه؟