تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
LinqToSQL اضافة حذف تعديل بحث
#2
السلام عليكم

تعديل البيانات:

C#
PHP كود :
private void update_btn_Click(object senderEventArgs e)
        {
 
            
//Update Data
 
            // التعديل ايضا حسب التسلسل
            
int id int.Parse(id_txt.Text);

            
// Linqتعبير اخر لل
            
StdInfo s dbo.GetTable<StdInfo>().Where(=> (c.ID == id)).Single();
            
s.FName name_txt.Text;
            
s.DoB DateTime.Parse(dob_txt.Text);
            
s.Address addr_txt.Text;
 
            
dbo.SubmitChanges(); // تأكيد التغييرات على الجدول
            
load_btn_Click(nullnull);
        } 

VB
PHP كود :
Private Sub update_btn_Click(sender As ObjectAs EventArgs)
            
'Update Data

            ' 
التعديل ايضا حسب التسلسل
            Dim id 
As Integer Integer.Parse(id_txt.Text)

            
' Linqتعبير اخر لل
            Dim s As StdInfo = dbo.GetTable(Of StdInfo)().Where(Function(c) (c.ID = id)).[Single]()
            s.FName = name_txt.Text
            s.DoB = DateTime.Parse(dob_txt.Text)
            s.Address = addr_txt.Text

            dbo.SubmitChanges() ' 
تأكيد التغييرات على الجدول
            
            load_btn_Click
(NothingNothing)
        
End Sub 


تحميل البيانات من الجدول في قاعدة البيانات:
اولا نضيف الدالة التالية:

C#
PHP كود :
private void Fill(int pos)
        {
            
Enabled_btns(true);
            
insert_btn.Enabled false;
            
id_txt.Text student[pos].ID.ToString();
            
name_txt.Text student[pos].Fname;
            
dob_txt.Text student[pos].DoB.ToString();
            
addr_txt.Text student[pos].Address;
        } 

VB
PHP كود :
Private Sub Fill(pos As Integer)
            
Enabled_btns(True)
            
insert_btn.Enabled False
            id_txt
.Text student(pos).ID.ToString()
            
name_txt.Text student(pos).Fname
            dob_txt
.Text student(pos).DoB.ToString()
            
addr_txt.Text student(pos).Address
        End Sub 


ثانيا

C#
PHP كود :
private void load_btn_Click(object senderEventArgs e)
        {
           
            
//Load
            
if (dbo.StdInfos.Count() > 0)
            {
                
// اختيار جميع السجلات من الجدول في قاعدة البيانات
                
var ss =
                    
from StdInfo s in dbo.StdInfos
                    select s
;
 
                
student = new List<Students>();
 
                foreach (var 
std in ss)
                {
                    
// Studentsاضافة جميع السجلات الى القائمة التي هي من نوع الفئة 
                    
student.Add(new Students
                    
{
                        
ID std.ID,
                        
Fname std.FName,
                        
DoB std.DoB,
                        
Address=std.Address 
                    
});
                    
                    
// للتكملة التلقائية للكلمات لحقل البحث
                    
srch_txt.AutoCompleteCustomSource.Add(std.FName);
                }
 
                
Fill(pos);
            }
            else
            {
                
MessageBox.Show("There is no record in table");
            }
        } 


VB
PHP كود :
Private Sub load_btn_Click(sender As ObjectAs EventArgs)

            
'Load
            If dbo.StdInfos.Count() > 0 Then
                ' 
اختيار جميع السجلات من الجدول في قاعدة البيانات
                Dim ss 
From s In dbo.StdInfoss

                student 
= New List(Of Students)()

                For 
Each std As var In ss
                    
' Studentsاضافة جميع السجلات الى القائمة التي هي من نوع الفئة 
                    student.Add(New Students() With { _
                        Key .ID = std.ID, _
                        Key .Fname = std.FName, _
                        Key .DoB = std.DoB, _
                        Key .Address = std.Address _
                    })

                    ' 
للتكملة التلقائية للكلمات لحقل البحث
                    srch_txt
.AutoCompleteCustomSource.Add(std.FName)
                
Next

                Fill
(pos)
            Else
                
MessageBox.Show("There is no record in table")
            
End If
        
End Sub 


عرض اول سجل

C#
PHP كود :
private void first_btn_Click(object senderEventArgs e)
        {
            
Fill(pos 0);
        } 

VB
PHP كود :
Private Sub first_btn_Click(sender As ObjectAs EventArgs)
            
Fill(InlineAssignHelper(pos0))
        
End Sub 


عرض اخر سجل

C#
PHP كود :
private void last_btn_Click(object senderEventArgs e)
        {
            
Fill(pos student.Count 1);
        } 

VB
PHP كود :
Private Sub last_btn_Click(sender As ObjectAs EventArgs)
            
Fill(InlineAssignHelper(posstudent.Count 1))
        
End Sub 


عرض السجل التالي

C#
PHP كود :
private void next_btn_Click(object senderEventArgs e)
        {
            if (
pos student.Count 1)
            {
                
pos++;
                
Fill(pos);
            }
        } 

VB
PHP كود :
Private Sub next_btn_Click(sender As ObjectAs EventArgs)
            If 
pos student.Count 1 Then
                pos 
+= 1
                Fill
(pos)
            
End If
        
End Sub 


عرض السجل السابق

C#
PHP كود :
private void prev_btn_Click(object senderEventArgs e)
        {
            if (
pos 0)
            {
                
pos--;
                
Fill(pos);
            }
        } 

VB
PHP كود :
Private Sub prev_btn_Click(sender As ObjectAs EventArgs)
            If 
pos 0 Then
                pos 
-= 1
                Fill
(pos)
            
End If
        
End Sub 

زر البحث

C#
PHP كود :
private void dosrch_btn_Click(object senderEventArgs e)
        {
 
            
//Search Data
 
            
load_btn_Click(nullnull);
 
            for (
0student.Counti++)
            {
                if (
srch_txt.Text == student[i].Fname)
                {
                    
id_txt.Text student[i].ID.ToString();
                    
name_txt.Text student[i].Fname;
                    
dob_txt.Text student[i].DoB.ToString();
                    
pos i;
                }
            }
 
            
//or
            /*std stud =
                (
                from std s in dclass.GetTable<std>()
                 where s.FName == src_txt.Text
                 select s
                 ).SingleOrDefault<std>();
 
            id_txt.Text = stud.ID.ToString();
            name_txt.Text = stud.FName;
            grade_txt.Text = stud.Grade.ToString();*/
        


VB
PHP كود :
Private Sub dosrch_btn_Click(sender As ObjectAs EventArgs)

            
'Search Data

            load_btn_Click(Nothing, Nothing)

            For i = 0 To student.Count - 1
                If srch_txt.Text = student(i).Fname Then
                    id_txt.Text = student(i).ID.ToString()
                    name_txt.Text = student(i).Fname
                    dob_txt.Text = student(i).DoB.ToString()
                    pos = i
                End If
            Next

            '
or
            
'std stud =
'                
(
'                from std s in dclass.GetTable<std>()
'                 
where s.FName == src_txt.Text
'                 select s
'                 
).SingleOrDefault<std>();

'            
id_txt.Text stud.ID.ToString();
'            name_txt.Text = stud.FName;
'            
grade_txt.Text stud.Grade.ToString();

        
End Sub 


تفعيل اضافة سجل جديد

C#
PHP كود :
private void new_btn_Click(object senderEventArgs e)
        {
            
Enabled_btns(true);
            
id_txt.Text name_txt.Text dob_txt.Text addr_txt.Text "";
        } 

VB
PHP كود :
Private Sub new_btn_Click(sender As ObjectAs EventArgs)
            
Enabled_btns(True)
            
id_txt.Text InlineAssignHelper(name_txt.TextInlineAssignHelper(dob_txt.TextInlineAssignHelper(addr_txt.Text"")))
        
End Sub 


دالة التفعيل

C#
PHP كود :
private void Enabled_btns(bool b)
        {
             
name_txt.Enabled dob_txt.Enabled insert_btn.Enabled addr_txt.Enabled b;
        } 

VB
PHP كود :
Private Sub Enabled_btns(As Boolean)
            
name_txt.Enabled InlineAssignHelper(dob_txt.EnabledInlineAssignHelper(insert_btn.EnabledInlineAssignHelper(addr_txt.Enabledb)))
        
End Sub 


الغاء التفعيل

C#
PHP كود :
private void cancel_btn_Click(object senderEventArgs e)
        {
            
Enabled_btns(false);
        } 

VB
PHP كود :
Private Sub cancel_btn_Click(sender As ObjectAs EventArgs)
            
Enabled_btns(False)
        
End Sub 


عرض السجلات في الDataGridView

C#
PHP كود :
private void show_btn_Click(object senderEventArgs e)
        {
            
DGV.DataSource "";
            if (
dbo.StdInfos.Count() > 0)
            {
                
DGV.AutoSizeColumnsMode DataGridViewAutoSizeColumnsMode.AllCells;
if (
dbo.StdInfos.Count() <= 5)
                    
end dbo.StdInfos.Count();              
  
DGV.DataSource student.GetRange(startend);
DGV.Columns[0].HeaderText "التسلسل";
                
DGV.Columns[1].HeaderText "الاسم الكامل";
                
DGV.Columns[2].HeaderText "تاريخ الولادة";
                
DGV.Columns[3].HeaderText "العنوان";
            }
        } 

VB
PHP كود :
Private Sub show_btn_Click(sender As ObjectAs EventArgs)
            
DGV.DataSource ""
            
If dbo.StdInfos.Count() > 0 Then
                DGV
.AutoSizeColumnsMode DataGridViewAutoSizeColumnsMode.AllCells
If dbo.StdInfos.Count() <= 5 Then
                end1 
dbo.StdInfos.Count()
End If
DGV.DataSource student.GetRange(startendd)
DGV.Columns(0).HeaderText "التسلسل"
            
DGV.Columns(1).HeaderText "الاسم الكامل"
            
DGV.Columns(2).HeaderText "تاريخ الولادة"
            
DGV.Columns(3).HeaderText "العنوان"
            
End If
        
End Sub 


طباعة السجل الحالي

C#
PHP كود :
private void current_btn_Click(object senderEventArgs e)
        {
            
ReportForm repf = new ReportForm();
 
            
rep_source = new ReportDataSource("student"student);
            
repf.reportViewer1.LocalReport.DataSources.Add(rep_source);
 
            
rep_param = new ReportParameter[4];
            
rep_param[0] = new ReportParameter("ID"id_txt.Text);
            
rep_param[1] = new ReportParameter("Fname"name_txt.Text);
            
rep_param[2] = new ReportParameter("Dob"DateTime.Parse(dob_txt.Text).ToShortDateString());
            
rep_param[3] = new ReportParameter("Address"addr_txt.Text);
 
            
repf.reportViewer1.LocalReport.SetParameters(rep_param);
            
repf.reportViewer1.RefreshReport();
 
            
repf.ShowDialog();
        } 

VB
PHP كود :
Private Sub current_btn_Click(sender As ObjectAs EventArgs)
            
Dim repf As New ReportForm()

            
rep_source = New ReportDataSource("student"student)
            
repf.reportViewer1.LocalReport.DataSources.Add(rep_source)

            
rep_param = New ReportParameter(3) {}
            
rep_param(0) = New ReportParameter("ID"id_txt.Text)
            
rep_param(1) = New ReportParameter("Fname"name_txt.Text)
            
rep_param(2) = New ReportParameter("Dob"DateTime.Parse(dob_txt.Text).ToShortDateString())
            
rep_param(3) = New ReportParameter("Address"addr_txt.Text)

            
repf.reportViewer1.LocalReport.SetParameters(rep_param)
            
repf.reportViewer1.RefreshReport()

            
repf.ShowDialog()
        
End Sub 


طباعة السجلات المحددة من الDataGridView عن طريق الفأرة


C#
PHP كود :
private void selected_btn_Click(object senderEventArgs e)
        {
            
ReportForm repf = new ReportForm();
 
            
DataGridViewSelectedRowCollection rc DGV.SelectedRows;
 
            
rep_source = new ReportDataSource("student"student);
            
repf.reportViewer1.LocalReport.DataSources.Add(rep_source);
 
            
int i 0;
            
string s1 ""s2 ""s3 ""s4 "";
 
            for (
0rc.Counti++)
            {
                
s1 += rc[i].Cells["ID"].Value.ToString() + Environment.NewLine Environment.NewLine;
                
s2 += rc[i].Cells["FName"].Value.ToString() + Environment.NewLine Environment.NewLine;
                
s3 += DateTime.Parserc[i].Cells["DoB"].Value.ToString()).ToShortDateString() + Environment.NewLine Environment.NewLine;
                
s4 += rc[i].Cells["Address"].Value.ToString() + Environment.NewLine Environment.NewLine;
            }
 
            
rep_param = new ReportParameter[4];
            
rep_param[0] = new ReportParameter("ID"s1);
            
rep_param[1] = new ReportParameter("Fname"s2);
            
rep_param[2] = new ReportParameter("Dob"s3);
            
rep_param[3] = new ReportParameter("Address"s4);
 
            
repf.reportViewer1.LocalReport.SetParameters(rep_param);
            
repf.reportViewer1.RefreshReport();
 
            
repf.ShowDialog();
        } 

VB
PHP كود :
Private Sub selected_btn_Click(sender As ObjectAs EventArgs)
            
Dim repf As New ReportForm()

            
Dim rc As DataGridViewSelectedRowCollection DGV.SelectedRows

            rep_source 
= New ReportDataSource("student"student)
            
repf.reportViewer1.LocalReport.DataSources.Add(rep_source)

            
Dim i As Integer 0
            Dim s1 
As String ""s2 As String ""s3 As String ""s4 As String ""

            
For 0 To rc.Count 1
                s1 
+= rc(i).Cells("ID").Value.ToString() & Environment.NewLine Environment.NewLine
                s2 
+= rc(i).Cells("FName").Value.ToString() & Environment.NewLine Environment.NewLine
                s3 
+= DateTime.Parse(rc(i).Cells("DoB").Value.ToString()).ToShortDateString() & Environment.NewLine Environment.NewLine
                s4 
+= rc(i).Cells("Address").Value.ToString() & Environment.NewLine Environment.NewLine
            Next

            rep_param 
= New ReportParameter(3) {}
            
rep_param(0) = New ReportParameter("ID"s1)
            
rep_param(1) = New ReportParameter("Fname"s2)
            
rep_param(2) = New ReportParameter("Dob"s3)
            
rep_param(3) = New ReportParameter("Address"s4)

            
repf.reportViewer1.LocalReport.SetParameters(rep_param)
            
repf.reportViewer1.RefreshReport()

            
repf.ShowDialog()
        
End Sub 


طباعة كافة السجلات

C#
PHP كود :
private void all_btn_Click(object senderEventArgs e)
        {
            
ReportForm repf = new ReportForm();
 
            
rep_source = new ReportDataSource("student"student);
            
repf.reportViewer1.LocalReport.DataSources.Add(rep_source);
 
            
int i 0;
            
string s1 ""s2 ""s3 ""s4 "";
 
            for (
0student.Counti++)
            {
                
s1 += student[i].ID.ToString() + Environment.NewLine Environment.NewLine;
                
s2 += student[i].Fname.ToString() + Environment.NewLine Environment.NewLine;
                
s3 += DateTime.Parse(student[i].DoB.ToString()).ToShortDateString() + Environment.NewLine Environment.NewLine;
                
s4 += student[i].Address.ToString() + Environment.NewLine Environment.NewLine;
            }
 
            
rep_param = new ReportParameter[4];
            
rep_param[0] = new ReportParameter("ID"s1);
            
rep_param[1] = new ReportParameter("Fname"s2);
            
rep_param[2] = new ReportParameter("Dob"s3);
            
rep_param[3] = new ReportParameter("Address"s4);
 
            
repf.reportViewer1.PageCountMode PageCountMode.Actual;
            
repf.reportViewer1.LocalReport.SetParameters(rep_param);
            
repf.reportViewer1.RefreshReport();
            
//Showing the report form
            
repf.ShowDialog();
        } 

VB
PHP كود :
Private Sub all_btn_Click(sender As ObjectAs EventArgs)
            
Dim repf As New ReportForm()

            
rep_source = New ReportDataSource("student"student)
            
repf.reportViewer1.LocalReport.DataSources.Add(rep_source)

            
Dim i As Integer 0
            Dim s1 
As String ""s2 As String ""s3 As String ""s4 As String ""

            
For 0 To student.Count 1
                s1 
+= student(i).ID.ToString() & Environment.NewLine Environment.NewLine
                s2 
+= student(i).Fname.ToString() & Environment.NewLine Environment.NewLine
                s3 
+= DateTime.Parse(student(i).DoB.ToString()).ToShortDateString() & Environment.NewLine Environment.NewLine
                s4 
+= student(i).Address.ToString() & Environment.NewLine Environment.NewLine
            Next

            rep_param 
= New ReportParameter(3) {}
            
rep_param(0) = New ReportParameter("ID"s1)
            
rep_param(1) = New ReportParameter("Fname"s2)
            
rep_param(2) = New ReportParameter("Dob"s3)
            
rep_param(3) = New ReportParameter("Address"s4)

            
repf.reportViewer1.PageCountMode PageCountMode.Actual
            repf
.reportViewer1.LocalReport.SetParameters(rep_param)
            
repf.reportViewer1.RefreshReport()
            
'Showing the report form
            repf.ShowDialog()
        End Sub 


عرض الصفحة التالية في الDataGridView (5 سجلات في كل صفحة)

C#
PHP كود :
private void nextpage_btn_Click(object senderEventArgs e)
        {
            if (
start student.Count 5)
            {
                
start += end;
                if (
start student.Count)
                    
end student.Count start;
                
DGV.DataSource student.GetRange(startend);
            }
        } 

VB
PHP كود :
Private Sub nextpage_btn_Click(sender As ObjectAs EventArgs)
            If 
start student.Count 5 Then
                start 
+= endd
                
If start student.Count Then
                    endd 
student.Count start
                End 
If
                
DGV.DataSource student.GetRange(startendd)
            
End If
        
End Sub 


عرض الصفحة السابقة في الDataGridView

C#
PHP كود :
private void prevpage_btn_Click(object senderEventArgs e)
        {
            if (
start 0)
            {
                if (
end 5)
                    
end 5;
                
start -= end;
                
DGV.DataSource student.GetRange(startend);
            }
        } 

VB
PHP كود :
Private Sub prevpage_btn_Click(sender As ObjectAs EventArgs)
            If 
start 0 Then
                
If endd 5 Then
                    endd 
5
                End 
If
                
start -= endd
                DGV
.DataSource student.GetRange(startendd)
            
End If
        
End Sub 


PHP كود :
Private Shared Function InlineAssignHelper(Of T)(ByRef target As Tvalue As T) As T
        target 
value
        
Return value
    End 
Function 

كما تلاحظون استخدام دالة الGetRange للList حيث نحدد البداية و النهاية (الصفحة تبدأ من اول سجل الى خامس سجل أي عرض 5 سجلات في كل صفحة)


[b]المثال في المرفقات بلغة C# بدون قاعدة بيانات



هذا والحمد لله الذي وفقنا لإتمام هذا الموضوع اسأل الله ان يوفقنا وإياكم لمراضيه ولا تنسونا من صالح دعواتكم
وصلى الله على محمد وآله الطاهرين
[/b]


الملفات المرفقة
.rar   Linq_to_Sql.rar (الحجم : 69.04 ك ب / التحميلات : 153)
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , Aymanr3b , Aymanr3b , Aymanr3b


الردود في هذا الموضوع
LinqToSQL اضافة حذف تعديل بحث - بواسطة Sajad - 22-04-13, 07:01 PM
LinqToSQL اضافة حذف تعديل بحث - بواسطة Sajad - 22-04-13, 09:46 PM
LinqToSQL اضافة حذف تعديل بحث - بواسطة Sajad - 23-04-13, 02:36 PM
LinqToSQL اضافة حذف تعديل بحث - بواسطة Sajad - 25-06-13, 05:20 PM
LinqToSQL اضافة حذف تعديل بحث - بواسطة Sajad - 31-07-13, 10:15 PM
LinqToSQL اضافة حذف تعديل بحث - بواسطة Abu Ehab - 31-07-13, 10:42 PM
LinqToSQL اضافة حذف تعديل بحث - بواسطة Sajad - 31-07-13, 11:03 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [نقاش] LinqToSql Or Entity Framework حريف برمجة 2 8,836 30-11-17, 05:01 PM
آخر رد: حريف برمجة
  [مثال] LinqToSql Using C# in WPF Sajad 13 9,498 04-10-15, 07:32 AM
آخر رد: أبو عمر

التنقل السريع :


يقوم بقرائة الموضوع: