خصوصیات کنترل چک باکس لیست
کنترل Check Box List دارای چهار خصوصیت اصلی و مهم شامل Data Source، Fill Query، Delete Query و Update Query است که تکمیل نمودن آنها برای کارکرد صحیح این کنترل ضروری می باشد.
برای کارکرد صحیح این خصوصیت نیاز است تا یک کوئری از نوع Select در قسمت Query Editor نوشته شود.
نحوه صحیح وارد نمودن کوئری در Query Editor برای خصوصیت "Data Source":
توجه داشته باشید که در این کوئری باید کلید اصلی (ID) رکورد و همچنین عنوان آن انتخاب شود.
در این مثال می توان از کد زیر در قسمت Query Editor خصوصیت "Data Source" استفاده نمود:
برای کارکرد صحیح این خصوصیت نیاز است تا یک کوئری از نوع Select نوشته شود. نحوه صحیح وارد نمودن کوئری Query Editor برای خصوصیت "Fil Query" را می توان در کد زیر مشاهده نمود.
همچنین در این مثال می توان از کد زیر برای Query Editor خصوصیت "Fill Query" استفاده نمود:
نحوه صحیح وارد نمودن کد Query Editor برای خصوصیت "Delete Query" :
همچنین در این مثال میتوان از کد زیر برای Query Editor خصوصیت "Delete Query" استفاده نمود:
نحوه صحیح وارد نمودن کد Query Editor برای خصوصیت "Update Query" :
همچنین در این مثال می توان از کد زیر برای Query Editor در خصوصیت "Update Query" استفاده نمود:
توجه داشته باشید در این کوئری منظور از (@KEY) کلید خود فرم و منظور از (@ID) هم شناسه (Value) هر یک از چک باکس ها است.
به غیر از این چهار خصوصیت اصلی، کنترل چک باکس لیست خصوصیات دیگری نیز دارد که به غیر از خصوصیت Columns Mode، دیگر خصوصیتهای آن با کنترل های دیگر مشترک است.
همچنین در خصوصیت Columns Mode برای دسترسی و مدیریت آسان تر چک باکس ها (هنگامی که تعداد زیادی از آنها در برنامه وجود دارد)، ویژگی دیگری در نظر گرفته شده است که با استفاده از آن می توان لیست پیشرفته ای از چک باکس ها ایجاد نمود. برای استفاده از این ویژگی کافیست مقدار خصوصیت Columns Mode را برابر با "1-" قرار داد تا نحوه نمایش آنها مانند تصویر زیر تغییر نماید.
همان طور که در تصویر فوق مشخص است، این ویژگی علاوه بر آن که تمامی چک باکس ها را به صورت کرکره ای یا دراپ داون (Drop Down) نمایش می دهد، امکان جستجو، فعال سازی و غیر فعال سازی تمام چک باکس ها (به صورت همزمان) را نیز در اختیار کاربر قرار می دهد.
Data Source
خصوصیت Data Source اولین خصوصیت اصلی کنترل Check Box List است، که با توجه به کوئری وارد شده در قسمت Query Editor، اقلام اطلاعاتی مورد نیاز را از یک جدول در دیتابیس خوانده و هرکدام از رکورد های آن را به صورت Check Box نمایش می دهد.
برای کارکرد صحیح این خصوصیت نیاز است تا یک کوئری از نوع Select در قسمت Query Editor نوشته شود.
نحوه صحیح وارد نمودن کوئری در Query Editor برای خصوصیت "Data Source":
SELECT Table_Name.Column_Name
FROM Table_name
FROM Table_name
توجه داشته باشید که در این کوئری باید کلید اصلی (ID) رکورد و همچنین عنوان آن انتخاب شود.
در این مثال می توان از کد زیر در قسمت Query Editor خصوصیت "Data Source" استفاده نمود:
SELECT UserGroupList.UserGroup_ID,
UserGroupList.UserGroupName
FROM UserGroupList
UserGroupList.UserGroupName
FROM UserGroupList
Fill Query
دومین خصوصیت اصلی این کنترل، Fill Query است که با توجه به کوئری وارد شده در قسمت Query Editor، فعال یا غیر فعال بودن Check Box را تعیین می نماید.
برای کارکرد صحیح این خصوصیت نیاز است تا یک کوئری از نوع Select نوشته شود. نحوه صحیح وارد نمودن کوئری Query Editor برای خصوصیت "Fil Query" را می توان در کد زیر مشاهده نمود.
SELECT Column_Name[Primary_Key]
FROM Table_name
WHERE ID =
FROM Table_name
WHERE ID =
همچنین در این مثال می توان از کد زیر برای Query Editor خصوصیت "Fill Query" استفاده نمود:
SELECT UserGroupID
FROM UserGroupList
WHERE UserID =
FROM UserGroupList
WHERE UserID =
Delete Query
قبل از اجرای دستورات Update Query، کدهای خصوصیت Delete Query اجرا خواهد شد. با این کار یکبار داده های موجود در دیتابیس حذف شده و پس از آن با توجه به وضعیت چک باکس های موجود در فرم و با استفاده از خصوصیت Update Query، آخرین وضعیت چک باکس ها در دیتابیس و در جدول مربوطه ثبت می شود. برای کارکرد صحیح این خصوصیت نیاز است تا یک کوئری از نوع Delete نوشته شود.
نحوه صحیح وارد نمودن کد Query Editor برای خصوصیت "Delete Query" :
DELETE
FROM Table_name
WHERE ID =
FROM Table_name
WHERE ID =
همچنین در این مثال میتوان از کد زیر برای Query Editor خصوصیت "Delete Query" استفاده نمود:
DELETE
FROM UserGroupList
WHERE UserID =
FROM UserGroupList
WHERE UserID =
Update Query
پس از آن که اطلاعات وضعیت چک باکس های فرم در جدول دیتابیس توسط خصوصیت Delete Query حذف شد، نوبت به اجرای خصوصیت Update Query می رسد. با این کار، اطلاعات چک باکس های فرم با توجه به وضعیت فعال و یا عدم فعال بودن آنها وارد دیتابیس می شود. برای کارکرد صحیح این خصوصیت نیاز است تا یک کوئری از نوع Insert نوشته شود.
نحوه صحیح وارد نمودن کد Query Editor برای خصوصیت "Update Query" :
INSERT INTO Table_name
(Column1 , Column2 , …)
VALUE
(@KEY , @ID)
(Column1 , Column2 , …)
VALUE
(@KEY , @ID)
همچنین در این مثال می توان از کد زیر برای Query Editor در خصوصیت "Update Query" استفاده نمود:
INSERT INTO UserGroupList
(UserID , UserGroupID)
VALUE
(@KEY , @ID)
(UserID , UserGroupID)
VALUE
(@KEY , @ID)
توجه داشته باشید در این کوئری منظور از (@KEY) کلید خود فرم و منظور از (@ID) هم شناسه (Value) هر یک از چک باکس ها است.
به غیر از این چهار خصوصیت اصلی، کنترل چک باکس لیست خصوصیات دیگری نیز دارد که به غیر از خصوصیت Columns Mode، دیگر خصوصیتهای آن با کنترل های دیگر مشترک است.
خصوصیت Columns Mode
با استفاده از این خصوصیت می توان تعداد چک باکس های موجود در هر ردیف را مدیریت کرد. به عنوان مثال اگر 6 عدد چک باکس داشته باشیم و مقدار این خصوصیت را برابر با 3 قرار دهیم، در هر ردیف سه عدد چک باکس قرار خواهد گرفت و پس از آن به ردیف بعد خواهد رفت تا تمام چک باکس ها در صفحه قرار گیرند.
همچنین در خصوصیت Columns Mode برای دسترسی و مدیریت آسان تر چک باکس ها (هنگامی که تعداد زیادی از آنها در برنامه وجود دارد)، ویژگی دیگری در نظر گرفته شده است که با استفاده از آن می توان لیست پیشرفته ای از چک باکس ها ایجاد نمود. برای استفاده از این ویژگی کافیست مقدار خصوصیت Columns Mode را برابر با "1-" قرار داد تا نحوه نمایش آنها مانند تصویر زیر تغییر نماید.
همان طور که در تصویر فوق مشخص است، این ویژگی علاوه بر آن که تمامی چک باکس ها را به صورت کرکره ای یا دراپ داون (Drop Down) نمایش می دهد، امکان جستجو، فعال سازی و غیر فعال سازی تمام چک باکس ها (به صورت همزمان) را نیز در اختیار کاربر قرار می دهد.