Çalışma Sayfalarında Doğrulamalarla Çalışmak

Doğrulama Modları

Aspose.Cells.GridDesktop tarafından desteklenen üç doğrulama modu aşağıdaki gibidir:

  • Gereklidir Doğrulama Modu
  • Düzenli İfadeler Doğrulama Modu
  • Özel Doğrulama Modu

Gereklidir Doğrulama Modu

Bu doğrulama modunda, kullanıcılar belirtilen hücrelere değer girme konusunda kısıtlanır. Bir Gereklidir Doğrulaması bir çalışma sayfası hücresine uygulandığında, o hücreye değer girmek kullanıcı için zorunlu hale gelir.

Düzenli İfadeler Doğrulama Modu

Bu modda, çalışma sayfası hücrelerine belirli bir formatta veri göndermek üzere kısıtlamalar uygulanır. Veri formatının deseni bir Düzenli İfade biçiminde sağlanır.

Özel Doğrulama Modu

Özel Doğrulama kullanmak için, geliştiricilerin Aspose.Cells.GridDesktop.ICustomValidation arabirimini uygulaması gereklidir. Arabirim bir Doğrula yöntemi sağlar. Bu yöntem veri doğruysa true döndürür aksi takdirde false döndürür.

Aspose.Cells.GridDesktop’ta Doğrulamalarla Çalışmak

Doğrulama Ekleme

Çalışma sayfası hücresine herhangi bir doğrulama eklemek için lütfen aşağıdaki adımları takip edin:

  • Form‘unuza Aspose.Cells.GridDesktop kontrolünü ekleyin
  • Herhangi bir istenen Çalışma Sayfası‘na erişin
  • Çalışma Sayfası‘nın Doğrulamalar koleksiyonuna istenen doğrulamayı ekleyerek, hangi hücreye hangi doğrulamanın uygulanacağını belirtin.
// 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 Uygulama

Yukarıdaki kod parçacığında, A8 hücresine bir özel doğrulama ekledik ancak henüz bu özel doğrulamayı uygulamadık. Bu konunun başında açıkladığımız gibi özel doğrulama uygulamak için ICustomValidation arabirimini uygulamamız gerektiğini hatırlayalım. Bu yüzden ICustomValidation arabirimini uygulamak için bir sınıf oluşturmayı deneyelim.

Aşağıdaki kod parçacığında, aşağıdaki kontrolleri gerçekleştiren bir özel doğrulama uyguladık:

  • Doğrulamanın eklenmiş olduğu hücre adresinin doğru olup olmadığını kontrol edin
  • Hücre değerinin veri tipinin double olup olmadığını kontrol edin
  • Hücre değerinin 100’den büyük olup olmadığını kontrol edin
// 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;
}
}

Doğrulamaya Erişme

Bir doğrulama belirli bir çalışma sayfası hücresine eklenmişse, geliştiricilerin çalışma zamanında belirli bir doğrulamanın özelliklerini erişip değiştirmesi gerekebilir. Bu görevi gerçekleştirmek için Aspose.Cells.GridDesktop, geliştiriciler için bu işlemi basit hale getirmiştir.

Belirli bir doğrulamaya erişmek için lütfen aşağıdaki adımları izleyin:

  • İstenen Çalışma Sayfasına erişin
  • Hücreye uygulanan doğrulamayı belirterek çalışma sayfasındaki belirli bir Doğrulamaya erişin
  • İstenirse Doğrulama özelliklerini düzenleyin
// 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.");
}

Doğrulamayı Kaldırma

Çalışma sayfasından belirli bir doğrulamayı kaldırmak için lütfen aşağıdaki adımları izleyin:

  • İstenen Çalışma Sayfasına erişin
  • Doğrulamanın uygulandığı hücre adını belirterek Çalışma Sayfasından belirli bir Doğrulamayı kaldırın
// 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.");
}