نمایش نتایج 1 تا 5 از 5

نام تاپیک: غیر فعال کردن چک باکس

  1. #1

    غیر فعال کردن چک باکس

    سلام دوستان من یک گریدویو که ستون اول آن چک باکس است را بوسیله یک چک باکس دیگر خارج از گریدویو کنترل و تماما فعال و غیرفعال می کنم حالا سوال اینجاست که چگونه وقتی تمام چک باکس های داخل گریدویو فعال می باشند را با غیر فعال کردن تمامی چک باکسهای بصورت دستی چک باکس خارج از گریدویو من هم غیر فعال یا همان تیکش برداشته شود تاکید من بر اینه که وقتی تمام تیک های چک باکس ها بصورت دستی برداشته شد انوقت چک باکس بیرون هم False بشه با تشکر از دوستان

  2. #2

    نقل قول: غیر فعال کردن چک باکس

    نقل قول نوشته شده توسط safari_m4 مشاهده تاپیک
    سلام دوستان من یک گریدویو که ستون اول آن چک باکس است را بوسیله یک چک باکس دیگر خارج از گریدویو کنترل و تماما فعال و غیرفعال می کنم حالا سوال اینجاست که چگونه وقتی تمام چک باکس های داخل گریدویو فعال می باشند را با غیر فعال کردن تمامی چک باکسهای بصورت دستی چک باکس خارج از گریدویو من هم غیر فعال یا همان تیکش برداشته شود تاکید من بر اینه که وقتی تمام تیک های چک باکس ها بصورت دستی برداشته شد انوقت چک باکس بیرون هم False بشه با تشکر از دوستان
    DataGridViewCheckBoxSample.rar


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    For i = 1 To 10
    DataGridView1.Rows.Add(False, i, CType(i, KnownColor))
    Next
    End Sub

    Private Sub DataGridView1_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellValueChanged
    If CheckBox1.Enabled AndAlso e.ColumnIndex = 0 Then UpdateCheckBox()
    End Sub

    Private Sub DataGridView1_CurrentCellDirtyStateChanged(sender As Object, e As EventArgs) Handles DataGridView1.CurrentCellDirtyStateChanged
    If CheckBox1.Enabled Then DataGridView1.EndEdit()
    End Sub

    Private Sub UpdateCheckBox()
    Dim checkedFound = False
    Dim uncheckedFound = False
    For Each row As DataGridViewRow In DataGridView1.Rows
    If row.Cells(0).Value Then
    checkedFound = True
    Else
    uncheckedFound = True
    End If
    If checkedFound AndAlso uncheckedFound Then Exit For
    Next
    CheckBox1.Enabled = False
    CheckBox1.CheckState = IIf(checkedFound AndAlso uncheckedFound, CheckState.Indeterminate, checkedFound)
    CheckBox1.Enabled = True
    End Sub

    Private Sub CheckBox1_Click(sender As Object, e As EventArgs) Handles CheckBox1.Click
    If CheckBox1.Enabled = False Then Exit Sub
    CheckBox1.Enabled = False
    CheckBox1.Checked = Not CheckBox1.Checked
    DataGridView1.EndEdit
    For Each row As DataGridViewRow In DataGridView1.Rows
    row.Cells(0).Value = CheckBox1.Checked
    Next
    CheckBox1.Enabled = True
    End Sub


    Preview.png

  3. #3

    نقل قول: غیر فعال کردن چک باکس

    نقل قول نوشته شده توسط the king مشاهده تاپیک
    DataGridViewCheckBoxSample.rar


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    For i = 1 To 10
    DataGridView1.Rows.Add(False, i, CType(i, KnownColor))
    Next
    End Sub

    Private Sub DataGridView1_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellValueChanged
    If CheckBox1.Enabled AndAlso e.ColumnIndex = 0 Then UpdateCheckBox()
    End Sub

    Private Sub DataGridView1_CurrentCellDirtyStateChanged(sender As Object, e As EventArgs) Handles DataGridView1.CurrentCellDirtyStateChanged
    If CheckBox1.Enabled Then DataGridView1.EndEdit()
    End Sub

    Private Sub UpdateCheckBox()
    Dim checkedFound = False
    Dim uncheckedFound = False
    For Each row As DataGridViewRow In DataGridView1.Rows
    If row.Cells(0).Value Then
    checkedFound = True
    Else
    uncheckedFound = True
    End If
    If checkedFound AndAlso uncheckedFound Then Exit For
    Next
    CheckBox1.Enabled = False
    CheckBox1.CheckState = IIf(checkedFound AndAlso uncheckedFound, CheckState.Indeterminate, checkedFound)
    CheckBox1.Enabled = True
    End Sub

    Private Sub CheckBox1_Click(sender As Object, e As EventArgs) Handles CheckBox1.Click
    If CheckBox1.Enabled = False Then Exit Sub
    CheckBox1.Enabled = False
    CheckBox1.Checked = Not CheckBox1.Checked
    DataGridView1.EndEdit
    For Each row As DataGridViewRow In DataGridView1.Rows
    row.Cells(0).Value = CheckBox1.Checked
    Next
    CheckBox1.Enabled = True
    End Sub


    Preview.png
    سلام دوست عزیز ضمن تشکر و سپاس از پاسختان فقط برای من اجرا نمیشه میشه یک توضیح مختصر در خصوص هر یک از رویداد هابدید لطفا مثلا در حلقه فور نوشته اید از صفر تا 10 این عدد برای چی می باشد اگر منظور تعداد ردیفهای گریدویو است خوب تعداد ردیفها نامعلوم است و در رویداد کلیک چک باکس عملیات پر کردن یا True چک باس های داخل گریدویو را انجام نمی دهد و .... مجدد با تشکر و سپاس قبلی

  4. #4

    نقل قول: غیر فعال کردن چک باکس

    نقل قول نوشته شده توسط safari_m4 مشاهده تاپیک
    سلام دوست عزیز ضمن تشکر و سپاس از پاسختان فقط برای من اجرا نمیشه میشه یک توضیح مختصر در خصوص هر یک از رویداد هابدید لطفا مثلا در حلقه فور نوشته اید از صفر تا 10 این عدد برای چی می باشد اگر منظور تعداد ردیفهای گریدویو است خوب تعداد ردیفها نامعلوم است و در رویداد کلیک چک باکس عملیات پر کردن یا True چک باس های داخل گریدویو را انجام نمی دهد و .... مجدد با تشکر و سپاس قبلی
    اگر برای شما اجرا نمیشه پست من رو نادیده بگیرید، وقت صرف بررسی کدی کردن که براتون اجرا شدنی نیست فایده نداره.
    کد داخل Form1_Load یک مثاله که فرضا به تعداد 10 آیتم در داخل DataGridView قرار دادم.
    طبعا با DataGridView خالی نمیتونستم کد رو امتحان کنم و باید قدری داده داخلش باشه.
    اون کد داخل Form1_Load ارتباطی با روال تیک خوردن و نخوردن CheckBox نداره و صرفا داده اولیه DataGridView است.
    در همه روال ها با For Each همه سطر های DataGridView بررسی شدن و تعداد سطر های DataGridView رو مقدار ثابتی مثل 10 فرض نکردن.

    کد داخل DataGridView1_CellValueChanged برای اینه که وقتی تیک های داخل DataGridView تغییر کرد UpdateCheckBox رو اجرا کنه تا بر اساس وضعیت تیک ها CheckBox1 رو به روز کنه.

    کد داخل CurrentCellDirtyStateChanged برای اینه که به محض تغییر تیک داخل DataGridView ویرایش مقدار رو تایید کنه چون اگر اینکار رو نکنه بصورت پیشفرض روال طوریه که تا موقع ترک اون خانه از DataGridView ویرایش تایید نمیشه و رخداد CellValueChanged فورا رخ نمیده.

    روال UpdateCheckBox وضعیت تیک های داخل DataGridView رو بررسی می کنه و بر اساس نتیجه اش به CheckBox1.CheckState مقدار میده.

    کد داخل CheckBox1_Click مقدار CheckBox1.Checked رو تغییر میده و بعد بر اساس مقدار CheckBox1.Checked یا همه سطر های داخل DataGridView رو تیک میزنه یا همه تیک ها رو برمیداره.

  5. #5

    نقل قول: غیر فعال کردن چک باکس

    نقل قول نوشته شده توسط the king مشاهده تاپیک
    اگر برای شما اجرا نمیشه پست من رو نادیده بگیرید، وقت صرف بررسی کدی کردن که براتون اجرا شدنی نیست فایده نداره.
    کد داخل Form1_Load یک مثاله که فرضا به تعداد 10 آیتم در داخل DataGridView قرار دادم.
    طبعا با DataGridView خالی نمیتونستم کد رو امتحان کنم و باید قدری داده داخلش باشه.
    اون کد داخل Form1_Load ارتباطی با روال تیک خوردن و نخوردن CheckBox نداره و صرفا داده اولیه DataGridView است.
    در همه روال ها با For Each همه سطر های DataGridView بررسی شدن و تعداد سطر های DataGridView رو مقدار ثابتی مثل 10 فرض نکردن.

    کد داخل DataGridView1_CellValueChanged برای اینه که وقتی تیک های داخل DataGridView تغییر کرد UpdateCheckBox رو اجرا کنه تا بر اساس وضعیت تیک ها CheckBox1 رو به روز کنه.

    کد داخل CurrentCellDirtyStateChanged برای اینه که به محض تغییر تیک داخل DataGridView ویرایش مقدار رو تایید کنه چون اگر اینکار رو نکنه بصورت پیشفرض روال طوریه که تا موقع ترک اون خانه از DataGridView ویرایش تایید نمیشه و رخداد CellValueChanged فورا رخ نمیده.

    روال UpdateCheckBox وضعیت تیک های داخل DataGridView رو بررسی می کنه و بر اساس نتیجه اش به CheckBox1.CheckState مقدار میده.

    کد داخل CheckBox1_Click مقدار CheckBox1.Checked رو تغییر میده و بعد بر اساس مقدار CheckBox1.Checked یا همه سطر های داخل DataGridView رو تیک میزنه یا همه تیک ها رو برمیداره.

    برنامه شما طبق فرمایشات خضرت عالی اجرا میشه و خوب است ولی خواسته من را اجرا نمیکنه چون من داخل گریدیو را با فعال و غیر فعال کردن چک باکس تمام چک های داخل گریدویو را فعال و غیر فعال می کنم ولی جهت حذف آن گفتم اگر تعداد رگوردها که مثلا 10 تا است وقتی در حالت انتخاب کلی است اگر احیانا از داخل گریدویو اون 10 تا چک برداشته شد و غیر فعال شدن تیک چک باکس هم غیر فعال شود بهر حال دست گل حضرتعالی درد نکند سپاس بیکران

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

  1. پاسخ: 0
    آخرین پست: چهارشنبه 28 تیر 1396, 10:42 صبح
  2. سوال: ارتباط با IP غیر ولید (غیر استاتیک) در اینترنت
    نوشته شده توسط abasfar در بخش شبکه و Networking‌
    پاسخ: 13
    آخرین پست: یک شنبه 11 بهمن 1394, 20:02 عصر
  3. پاسخ: 3
    آخرین پست: شنبه 02 آبان 1394, 22:45 عصر
  4. پاسخ: 4
    آخرین پست: سه شنبه 24 آبان 1390, 18:44 عصر

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

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