صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 48

نام تاپیک: داونلود کد: اعمال متداول با DataGrid در ASP.NET

  1. #1

    Smile داونلود کد: اعمال متداول با DataGrid در ASP.NET

    در یکی از پروژه هایی که چندی پیش بر روی آن کار می کردم، نیاز به وب فرمی جهت ثبت تقاضاهای مشتریان بود.
    در این فرم باید قابلیت ثبت، ویرایش و حذف درجا به کاربر داده میشد.
    از آنجا که در این وب فرم، برای ورود و ویرایش اطلاعات از DropDownList و Text Box و برای حذف از CheckBox ها استفاده شده و همچنین حاوی نکات جالبی در مورد نحوه مدیریت رویدادها و چگونگی ارجا به کنترل های درون DataGrid است، خالی از لطف نبود که این فرم به صورت Open Source برای استفاده دوستان قرار بگیره.
    انشاا... کمکی در مورد رفع مشکلات دوستان در کار با DataGrid باشد.
    توجه: جهت سهولت کار دوستان، تغییرات اندکی در پروژه داده شده. (تغییر دیتابیس از SQL Server به Access، حذف مدیریت تعیین هویت کاربر، تبدیل مدیریت پیچیده خطاها به مدیریت آسان و ...)
    پروژه با هر دو زبان VB.NET و C#‎.NET برای دوستان نوشته شده.
    آماده پاسخگویی به سوالات دوستان در مورد خطوط مختلف این پروژه هستم.
    لطفا از پرسیدن سوالات کلی خودداری نمایید.
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله Behrouz_Rad : چهارشنبه 19 مرداد 1384 در 15:31 عصر

  2. #2
    کاربر دائمی آواتار pegasos
    تاریخ عضویت
    مهر 1383
    محل زندگی
    MSDN
    پست
    125

    Red face

    با عرض سلام و خسته نباشید.
    خیلی لطف کردید.

    فقط یک خواهش بزرگ.

    <b>

    توجه: جهت سهولت کار دوستان، تغییرات اندکی در پروژه داده شده. (تبدیل از C#‎.NET به VB.NET، تغییر دیتابیس از SQL Server به Access، حذف مدیریت تعیین هویت کاربر، تبدیل مدیریت پیچیده خطاها به مدیریت آسان و ...)

    </b>
    آب دهانم جاری شد.


    اگر لطف کنید و همان نمونه اصلی را هم که خودتان کار کرده اید (‍C#‎ + SQL ) ارائه دهید واقعا ممنون می شویم.

    پر رو ئی مرا ببخشید.

    باز هم از شما متشکریم .

    به امید موفقیت.
    آخرین ویرایش به وسیله pegasos : سه شنبه 18 مرداد 1384 در 09:38 صبح

  3. #3
    عزیز جان!
    همین کدی رو هم که گذاشتم کلی ریسک کردم.
    در متن قرار دادی که با شرکت بسته شده، در صفحه سوم نوشته شده:
    .... همچنین حق انتشار کدهای برنامه تنها در اختیار شرکت درخواست دهنده بوده و نویسنده برنامه حق انتشار کدها را به هیچ وجه نخواهد داشت.

  4. #4
    دست شما درد نکند . خیلی عالی بوددددددددددددددددددددددد دددددددد.

  5. #5
    کاربر دائمی آواتار pegasos
    تاریخ عضویت
    مهر 1383
    محل زندگی
    MSDN
    پست
    125
    با عرض سلام مجدد.

    خیلی ممنون آقای راد.
    ببخشید که ما یک مقدار راحت طلب شده ایم .

    ما هم به هیچ وجه نمی خواهیم شخصیت حرفه ای شما زیر سعال برود.(من اطلاع نداشتم)
    کد ها هم ،بسیار بسیار عالی و کاربردی است.

    به امید موفقیت.

  6. #6
    Amazingly COOL
    آخرین ویرایش به وسیله SalarSoft : شنبه 23 مهر 1384 در 14:25 عصر

  7. #7
    بنا به درخواست تعدادی از دوستان، پروژه رو با زبان C#‎.net هم آماده کردم.
    از تاپیک اصلی داونلود کنید.

  8. #8
    کاربر دائمی آواتار AspNet
    تاریخ عضویت
    آذر 1383
    محل زندگی
    سایت برنامه نویس
    پست
    469

    Smile

    خسته نباشید

  9. #9
    میشه در مورد کد زیر یک توضیحی بدید.

    box = eval("document.Form1.DataGrid1__ctl" + i + "_ChkRemove");
    مخصوصا" DataGrid1__ctl یعنی چی.

  10. #10
    به منظور جلوگیری از تداخل نام کنترل های موجود در DataGrid، این کنترل ها بدین شکل ایجاد می شوند که ابتدا نام DataGrid (که در این پروژه DataGrid1 نام دارد) می آید. سپس دو کاراکتر Underline به همراه کلمه ctl که مخفف عبارت Control است. سپس یک عدد که معرف آی دی کنترل است.
    در ادامه یک کاراکتر Underline و در نهایت نام کنترل اصلی که توسط برنامه نویس به کنترل نسبت داده شده.
    متغیر box، با یک حلقه For، به تک تک CheckBox های موجود در DataGrid ارجا داده می شود و سپس علامت خوردن یا نخوردن چک باکس را بررسی می کند.

  11. #11
    سپس یک عدد که معرف آی دی کنترل است.

    آی دی چی.
    کدوم کنترل.

  12. #12
    آی دی یعنی مشخصه.
    هر کنترل دارای یک ID ایه.
    مثل تو که یه اسم داری.
    این ای دی رو می تونی از طریق مشاهده سورس HTML صفحه ببینی. (در IE از طریق انتخاب گزینه Source از منوی View و در FireFox از طریق انتخاب گزینه Page Source از منوی View)
    البته اگر کنترل های دیگه ای به DataGrid اضافه کنی، شماره اختصاص داده شده به کنترل تغییر می کنه.
    مقصود از کنترل نیز هر کنترلی است که در DataGrid است وجود دارد و بر اساس تعداد ردیف ها ایجاد می شود.

  13. #13
    نه منضور من این نبود . شما گفتید اول آی دی datagrid رو مینویسی بعد دو کلمه ی دیگه
    ((حالا یک عدد که معرف آی دی است .))
    اما آی دی دیتا گرید رو که قبلا" نوشتیم پس آی دی چی رو مینویسیم؟

  14. #14
    DataGrid، به کنترل هایی که درونش قرار می گیرن، یک شماره نسبت میده.
    در حقیقت، DataGrid، پدر اون کنترل هاست.

  15. #15
    فهمیدم ممنون

  16. #16
    میشه از این روش برای کنترل های دیگه هم مثل یک check box در صفحه استفاده کرد.

    یعنی اگر id اون chk1 باشه میشه
    chk1_ctl

  17. #17
    اگر میشه در مورد تابع Ctype هم توضیح بدید.

  18. #18
    اون روش مختص کنترل های Container هست.
    یعنی کنترل هایی که در برگیرنده کنترل های دیگه هستند. مثل Repeater، DataList، DataGrid و ...
    تابع CType برای تبدیل نوع سفارشی به کار میره.
    مثلا تابع CInt در VB.NET، برای تبدیل یک نوع داده به Integer استفاده میشه.
    در این برنامه، از دستور CType برای تبدیل ارجا به دست آمده به کنترل به نوع آن کنترل استفاده میشه.
    البته در VB.NET این عمل نیاز چندانی نداره و تنها برای ساخت یافتگی و رعایت اصول صحیح برنامه نویسی NET. استفاده میشه اما در C#‎.NET این تبدیل نوع حتما باید صورت بگیره و به طور صریح قادر به ارجا به یک شی نیستید.
    موفق باشید.

  19. #19
    سلام آقا بهروز
    من از روی کد شما یک کد دیگر ساختم من در یک ریپیتر یک چک باکس گذاشتم و شما که برای شناسایی آی دی از یک لیبل مخفی استفاده می کردید من این ای دی را به تول تیپ این کنترل نسبت دادم ولی وقتی می خواهم استفاده کنم از کد این خطا را می گیره من که نتونستم ایراد ان را بفهم لطفا شما کمکم کنید

    <TABLE dir="ltr" id="Table1" cellSpacing="0" cellPadding="0" width="100%" border="1" bordercolor="red"
    style="FONT-SIZE: 11pt; FONT-FAMILY: tahoma">
    <tr bgcolor="orange" align="center">
    <td>نوع محصول</td>
    <td>نام محصول</td>
    <td>اندازه</td>
    <td>امتیاز</td>
    <td>تاریخ اضافه شدن</td>
    <td>خرید</td>
    </tr>
    <asp:Repeater ID="rePro" Runat="server">
    <ItemTemplate>
    <tr bgcolor="DeepSkyBlue" align="center">
    <td><%# DataBinder.Eval(Container,"DataItem.type") %></td>
    <td align="left"><%# DataBinder.Eval(Container,"DataItem.name") %></td>
    <td nowrap="true"><%# DataBinder.Eval(Container,"DataItem.size") %>
    KB</td>
    <td><%# DataBinder.Eval(Container,"DataItem.voteid") %></td>
    <td><%# DataBinder.Eval(Container,"DataItem.datecreated") %></td>
    <td>
    <asp:CheckBox ID="chkAdd" Runat="server" tooltip='<%# DataBinder.Eval(Container,"DataItem.proid") %>'>
    </asp:CheckBox></td>
    </tr>
    </ItemTemplate>
    </asp:Repeater>


    و در قسمت کد بیهایند هم نوشتم

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim chkRemove As WebControls.CheckBox
    Dim strIDs As String = ""
    Dim boolCheck As Boolean = False

    For Each d As RepeaterItem In rePro.Items
    chkRemove = CType(rePro.FindControl("chkAdd"), WebControls.CheckBox)
    If chkRemove.Checked Then
    boolCheck = True
    strIDs += chkRemove.ToolTip() & ","
    End If
    Next

    ولی خطای زیر را می گیره لطفا مرا راهنمایی کنید
    Object reference not set to an instance of an object
    Kochol Game Engine
    http://www.kge3d.org



  20. #20
    سلام
    متاسفانه کد html منو تبدیل می کنه شما برای دیدن کد من روی دکمه qoute کلیک کنید
    راستی واقعا برنامه جالبی نوشتید ممنون
    Kochol Game Engine
    http://www.kge3d.org



  21. #21
    میشه بگید چرا بعضی وقتها پرو÷ه های شما یا دیگر سایتها رو وقتی تو vs میخوام اجرا کنم پیغام ختای زیر رو میده.
    visual studio .net can not creat application.the likeliest problem is that requeir commponentsare not installedon the local web server.Run visual studio .netsetup and add the web development component

  22. #22
    اگر بخواهیم این نوع پیغام دادن با java رو روی کنترلهای معمولی یعنی اینکه تو کنترل دیگه ای نباشه رو انجام داد باید چکار کرد؟

  23. #23
    جناب kochol، زمانی که قصد نوشتن کدهای HTML رو در ادیتور دارید، فعلا از کاراکتر T به جای علامت بزرگتر-کوچکتر استفاده کنید تا مشکل ادیتور برطرف بشه.
    شما گفتید که ID رو به خاصیت ToolTip کنترل Label نسبت دادید، اما در کدی که گذاشتید، این ID رو از خاصیت ToolTip کنترل CheckBox می خونید!

    کاربر PrinceDotNet، خطایی که گرفته میشه بدین دلیل هست که پروژه بنده در مسیری ایجاد شده که به منظور اجرای صحیح بر روی سیستم شما نیز باید در آن مسیر کپی شود.
    راه دیگه هم اینه که دو فایل webproj و sln پروژه رو در Notepad باز کنید و خطوطی که مربوط به مسیر ایجاد پروژه بر روی سیستم بنده هست رو با تنظیمات IIS خود Map کنید.
    به منظور سهولت کار، پروژه رو در Inetpub/wwwroot کپی و HomeDirectory را در IIS به همین مسیر تنظیم کنید.
    و اما...
    تفاوتی نمیکنه...
    به منظور الصاق یک تابع جاوا به یک کنترل، از دستوری شبیه به دستور زیر استفاده کنید:

    myControl.Attributes.Add("onclick","myFunction()")

    اولین آرگومان، نام روال و دومین آرگومان، نام تابع جاوا اسکریپت را مشخص می کند.
    موفق باشید.

  24. #24
    خیلی خیلی ممنون

  25. #25
    با سلام
    من کد ها رو اون طوری که گفتید تغییر دادم و می ذارم اینجا
    من این چند روزه همش داشتم باهش سروکله می زدم ولی نتونستم درستش کنم دیگه داره اشکم در می یاد لطفا مرا کمک کنید من که هر چی زور داشتم زدم

    Tasp:Repeater ID="rePro" Runat="server"T
    THeaderTemplateT
    TTABLE dir="ltr" id="Table1" cellSpacing="0" cellPadding="0" width="100%" border="1" bordercolor="red"
    style="FONT-SIZE: 11pt; FONT-FAMILY: tahoma"T
    Ttr bgcolor="orange" align="center"T
    TtdTنوع محصولT/tdT
    TtdTنام محصولT/tdT
    TtdTاندازهT/tdT
    TtdTامتیازT/tdT
    TtdTتاریخ اضافه شدنT/tdT
    TtdTخریدT/tdT
    T/trT
    T/HeaderTemplateT
    TItemTemplateT
    Ttr bgcolor="WhiteSmoke" align="center"T
    TtdTT%# DataBinder.Eval(Container,"DataItem.type") %TT/tdT
    Ttd align="left"TT%# DataBinder.Eval(Container,"DataItem.name") %TT/tdT
    Ttd nowrapTT%# DataBinder.Eval(Container,"DataItem.size") %T
    KBT/tdT
    TtdTT%# DataBinder.Eval(Container,"DataItem.voteid") %TT/tdT
    TtdTT%# DataBinder.Eval(Container,"DataItem.datecreated") %TT/tdT
    Ttd bgcolor="Lavender"T
    Tasp:CheckBox ID="chkAdd" Runat="server" tooltip='T%# DataBinder.Eval(Container,"DataItem.proid") %T'T
    T/asp:CheckBoxTT/tdT
    T/trT
    T/ItemTemplateT
    T/asp:RepeaterT


    اینهم کد سمت سرور

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim chkRemove As WebControls.CheckBox
    Dim strIDs As String = ""
    Dim boolCheck As Boolean = False

    For Each d As RepeaterItem In rePro.Items
    chkRemove = CType(rePro.FindControl("chkAdd"), WebControls.CheckBox)
    If chkRemove.Checked Then
    boolCheck = True
    strIDs += chkRemove.ToolTip() & ","
    End If
    Next
    Response.Write(strIDs)
    End Sub
    Kochol Game Engine
    http://www.kge3d.org



  26. #26
    میشه در مورد sub روتین DataGrid1_ItemDataBound توضیح بدید.

    یعنی چه موقع اتفاق می افتد؟

  27. #27
    کاربر جدید
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    تهران
    پست
    26
    فونت های فارسی بعضی هاش تغییر کرده و یه سری کاراکتر نامفهوم شده!ولی بعضی هاش درسته!برای اینکه عنوان ستون های فرم رو فارسی ببینیم باید چی کار کنیم؟

  28. #28
    کاربر PrinceDotNet!
    روال ItemDataBound پس از ایجاد یک ردیف از DataGrid اتفاق می افتد و تفاوت آن با روال ItemCreated در این است که روال ItemDataBound شامل اطلاعات دیتابیس است اما روال ItemCreated شامل هیچ اطلاعاتی از داده های موجود در دیتابیس نیست.

    خانم زهرا قاسمی!
    احتمالا مشکل از ویندوز شماست!
    تمامی وب فرم ها به صورت Unicode ذخیره شده اند و بدون هیچ مشکلی در نمایش حروف فارسی عمل می کنند.

    موفق باشید.

  29. #29

    box.cheked

    اول خیلی تشکر میکنم ازتون به خاطر پرو÷ه .

    بعد می خواستم بپرسم که من از بعضی قسمتها استفاده کردم اما در قسمت SCRIPT از BOX.CHECKED خطا می گیره میگه تعریف نشده است به نظرتون چرا؟

  30. #30
    یه اشکال دیگه هم که داشتم این بود:
    strChildPiece = ((DataBoundLiteralControl) e.Item.Cells[2].Controls[0]).Text

    DataBoundLiteralControl برای چی استفاده شده موقع اجرا روی edit که می زنم ازش خطا می گیره.

  31. #31
    ببخشید این اخریشه دیگه امیدوارم 3 تاشو جواب بدید

    من
    ( public void doInsert(object sender, DataGridCommandEventArgs e
    }
    {
    رو از برنامه شما کپی کردم اما موقع اجرا بعد از زدن دکمه اضافه واردش نمیشه میشه بگید از کجا باید بیارمش؟
    توی رخدادهای دیتا گرید که doinsert نداریم .
    ببخشید که من زیادی سئوال کردم اگه اینا رو لطف کنید جواب بدید دیگه تکرار نمیشه.

  32. #32
    جواب این سوالها رو پیدا کردم اولی که چیزی نبو د دومی هم باید از label استفاده می کردم سومی هم باید به جای doinsert از item commandاستفاده می کردم



    اما... حالا یه مشکل جدید پیش اومده وقتی ازallow paging برای صفحه صفحه کردن استفاده می کنم بعد وقتی می خوام رکوردی رو حذف کنم script رویbox cheked خطا می گیره
    میدونید چیکار باید بکنم؟امیدوارم این یکی رو دیگه جواب بدید.
    آخرین ویرایش به وسیله mahboobeh : یک شنبه 17 مهر 1384 در 11:59 صبح

  33. #33
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    ایران
    پست
    191
    با سلام .
    کدی که گذاشته اید خیلی خیلی عالی است و من کلی لستفاده کردم.. دستتان درد نکند.
    من یک سوالی دارم اینکه وقتی datagrid را صفحه بندی می کنم دکمه حذف کار نمی کند لطفا به من بگویید که چه کار کنم.
    با تشکر

  34. #34
    تابع جاوا اسکریپت confirmDelete موجود در فایل aspx را به شکل زیر تغییر دهید:

    function confirmDelete()
    {
    var j= <%= DataGrid1.Items.Count %>
    var xCounter = 0;
    for (i=3; i < j+3; i++)
    {
    box = eval("document.Form1.DataGrid1__ctl" + i + "_ChkRemove");
    if (box.checked == true)
    ++xCounter;
    }
    if (xCounter == 0)
    {
    alert("!هیچ رکوردی انتخاب نشده است");
    return false;
    }
    else
    return confirm("آیا مطمئن به حذف " +xCounter+ " رکورد انتخابی هستید؟")
    }

  35. #35
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    ایران
    پست
    191
    باسلام
    من کدی را که گفته بودید را گذاشتم و کد جاوا اسکریپت دکمه حذف کار می کند ولی سراغ item_command نمی رود ؟ حال برای حل مشکل چکار باید کرد؟
    با تشکر

  36. #36
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    ایران
    پست
    191
    آقای راد لطفا جواب بدهید؟

  37. #37
    شما چقدر عجولید خانم!
    به آخرین پست خود در این تاپیک 9 روز بعد برای گرفتن جواب سر می زنید اما طاقت تحمل یک روز برای رسیدن به جواب رو ندارید؟

    جواب سوالتون رو نمی دونم...

  38. #38
    میشه خواهش کنم ورژن دیتابیس SQL رو هم بذارید واسه دانلود

  39. #39
    لطفا به من کمک کنید :

    1- چطوری میتوانم رویداد SELECTED INDEX CHANGE مربوط به DATAGRID را در سمت CLIENT یعنی بدون این که صفحه POSTBACK بشود انجام دهم و مقدار فیلد کلیدی آن ردیف را دریافت کنم ؟

  40. #40
    اقا بهروز سلام من اون روز تاحالا تازه دیشب این فایل شما رو باز کردم و دیدم . دستت درد نکنه بابا سنگ تموم گداشتی خودمونیم ها .
    یا حق

صفحه 1 از 2 12 آخرآخر

تاپیک های مشابه

  1. کنترل کلیدها در DataGrid
    نوشته شده توسط once4ever در بخش C#‎‎
    پاسخ: 10
    آخرین پست: چهارشنبه 26 آبان 1389, 23:31 عصر
  2. نمایش یک رکورد جدول به صورت دو سطر در datagrid
    نوشته شده توسط zahracomputer در بخش ASP.NET Web Forms
    پاسخ: 11
    آخرین پست: چهارشنبه 12 مهر 1385, 20:22 عصر
  3. دستور If در DataGrid
    نوشته شده توسط shahramasp در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: چهارشنبه 14 تیر 1385, 21:12 عصر
  4. مشکل در کار با datagrid
    نوشته شده توسط radan63 در بخش ASP.NET Web Forms
    پاسخ: 7
    آخرین پست: سه شنبه 29 فروردین 1385, 09:27 صبح
  5. سه رقم سه رقم جداکردن در datagrid
    نوشته شده توسط Beyondsoft در بخش VB.NET
    پاسخ: 8
    آخرین پست: پنج شنبه 24 فروردین 1385, 18:53 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •