العمل مع عمليات التحقق من الصحة في أوراق العمل
أوضاع التحقق من الصحة
هناك ثلاثة أوضاع للتحقق من الصحة يدعمها Aspose.Cells.GridDesktop على النحو التالي:
- مطلوب وضع التحقق من الصحة
- وضع التحقق من صحة التعبيرات العادية
- وضع التحقق المخصص
مطلوب وضع التحقق من الصحة
في وضع التحقق هذا ، يتم تقييد المستخدمين لإدخال القيم في الخلايا المحددة. مرة واحدةمطلوب التحقق من الصحة يتم تطبيقه على خلية ورقة عمل ، فلا بد أن يقوم المستخدم بإدخال قيمة في تلك الخلية.
وضع التحقق من صحة التعبيرات العادية
في هذا الوضع ، يتم تطبيق القيود على خلايا ورقة العمل للمستخدمين لإرسال البيانات إلى خلايا بتنسيق معين. يتم توفير نمط تنسيق البيانات في شكل ملفتعبير عادي.
وضع التحقق المخصص
ليستخدمالتحقق المخصص ، يجب على المطورين تنفيذ واجهة Aspose.Cells.GridDesktop.ICustomValidation. توفر الواجهة ملفتحقق طريقة. هذه الطريقة ترجع صوابًا إذا كانت البيانات صحيحة ، وإلا فإنها ترجع خطأ.
العمل مع عمليات التحقق من الصحة في Aspose.Cells.GridDesktop
مضيفا التحقق من الصحة
لإضافة أي نوع من التحقق إلى خلية ورقة عمل ، يرجى اتباع الخطوات التالية:
- أضف Aspose.Cells.GridDesktop control إلى ملفاستمارة
- الوصول إلى أي ملفاتورقة عمل
- أضف التحقق المطلوب إلى ملفعمليات التحقق جمعورقة عمل لتحديد ذلك التحقق الذي سيتم تطبيقه على أي خلية.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing first worksheet of the Grid | |
Worksheet sheet = gridDesktop1.Worksheets[0]; | |
// Adding values to specific cells of the worksheet | |
sheet.Cells["a2"].Value = "Required"; | |
sheet.Cells["a4"].Value = "100"; | |
sheet.Cells["a6"].Value = "2006-07-21"; | |
sheet.Cells["a8"].Value = "101.2"; | |
// Adding Is Required Validation to a cell | |
sheet.Validations.Add("a2", true, ""); | |
// Adding simple Regular Expression Validation to a cell | |
sheet.Validations.Add("a4", true, @"\d+"); | |
// Adding complex Regular Expression Validation to a cell | |
sheet.Validations.Add("a6", true, @"\d{4}-\d{2}-\d{2}"); | |
// Adding Custom Validation to a cell | |
sheet.Validations.Add("a8", new CustomValidation()); |
تنفيذ ICustomValidation
في مقتطف الشفرة أعلاه ، أضفنا تحققًا مخصصًا بتنسيقأ 8خلية ولكننا لم ننفذ هذا التحقق المخصص حتى الآن. كما أوضحنا في بداية هذا الموضوع ، لتطبيق التحقق المخصص ، يجب أن ننفذICustomValidation واجهه المستخدم. لذا ، دعونا نحاول إنشاء فصل دراسي لتنفيذهICustomValidation واجهه المستخدم.
في مقتطف الشفرة الوارد أدناه ، قمنا بتنفيذ تحقق مخصص لإجراء الفحوصات التالية:
- تحقق مما إذا كان عنوان الخلية دقيقًا حيث تمت إضافة التحقق
- تحقق مما إذا كان نوع بيانات قيمة الخلية مزدوج
- تحقق مما إذا كانت قيمة الخلية أكبر من 100
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Implementing ICustomValidation interface | |
public class CustomValidation : Aspose.Cells.GridDesktop.ICustomValidation | |
{ | |
// Implementing Validate method already defined in the interface | |
public bool Validate(Worksheet worksheet, int row, int col, object value) | |
{ | |
// Checking the cell's address | |
if (row == 7 && col == 0) | |
{ | |
//Checking the data type of cell's value | |
double d = 0; | |
try | |
{ | |
d = (double)value; | |
} | |
catch | |
{ | |
return false; | |
} | |
// Checking if the cell's value is greater than 100 | |
if (d > 100) | |
return true; | |
} | |
return false; | |
} | |
} |
الوصول إلى التحقق
بمجرد إضافة التحقق إلى خلية ورقة عمل معينة ، قد يطلب المطورون الوصول إلى سمات تحقق معين وتعديلها في وقت التشغيل. لذا ، فإن Aspose.Cells.GridDesktop جعل الأمر سهلاً للمطورين لإنجاز هذه المهمة.
للوصول إلى تحقق محدد ، يرجى اتباع الخطوات أدناه:
- قم بالوصول إلى ملفورقة عمل
- الوصول إلى ملفتصديقفي ورقة العمل عن طريق تحديد اسم الخلية التي تم تطبيق التحقق من الصحة عليها
- تعديلتصديق السمات ، إذا رغبت في ذلك
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing first worksheet of the Grid | |
Worksheet sheet = gridDesktop1.Worksheets[0]; | |
if (sheet.Validations.Count > 0) | |
{ | |
// Accessing the Validation object applied on "a8" cell | |
Aspose.Cells.GridDesktop.Data.GridValidation validation = sheet.Validations[7, 0]; | |
// Editing the attributes of Validation | |
validation.IsRequired = true; | |
validation.RegEx = ""; | |
validation.CustomValidation = null; | |
MessageBox.Show("Validation has been edited after accessing it."); | |
} | |
else | |
{ | |
MessageBox.Show("No validations found to access."); | |
} |
إزالة التحقق من الصحة
لإزالة تحقق محدد من ورقة العمل ، يرجى اتباع الخطوات التالية:
- قم بالوصول إلى ملفورقة عمل
- إزالة محددتصديق منورقة عمل من خلال تحديد اسم الخلية التي تم تطبيق التحقق من الصحة عليها
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing first worksheet of the Grid | |
Worksheet sheet = gridDesktop1.Worksheets[0]; | |
if (sheet.Validations.Count > 0) | |
{ | |
// Removing the Validation object applied on "a6" cell | |
sheet.Validations.RemoveAt(1); | |
MessageBox.Show("Validation has been removed."); | |
} | |
else | |
{ | |
MessageBox.Show("No validations found to remove."); | |
} |