Hücreler için Stil Al ve Ayarla

Hücreleri Biçimlendirme

Bir hücreyi biçimlendirmenin iki yolu vardır, aşağıda gösterildiği gibi.

GetStyle() Kullanarak

Aşağıdaki kod parçasını kullanarak, bir hücre biçimlendirilirken her bir hücre için bir Stil nesnesi oluşturulur. Eğer birçok hücre biçimlendiriliyorsa, büyük miktarda bellek tüketilir çünkü Stil nesnesi büyük bir nesnedir. Bu Stil nesneleri Workbook.Save yöntemi çağrıldığında serbest bırakılmaz.

C#

cell.GetStyle().Font.IsBold = true;

SetStyle() Kullanarak

İlk yaklaşım kolay ve açıktır, peki neden ikinci yaklaşımı ekledik?

İkinci yaklaşımı bellek kullanımını optimize etmek için ekledik. Hücre.GetStyle yöntemini kullanarak bir Stil nesnesi alıp, onu değiştirip Hücre.SetStyle yöntemini kullanarak geri bu hücreye ayarlamak. Bu Stil nesnesi saklanmaz ve .NET GC ona referans olmadığında onu toplar.

Hücre.SetStyle yöntemi çağrıldığında, Stil nesnesi her bir hücre için saklanmaz. Bunun yerine bu Stil nesnesi içsel bir Stil nesnesi havuzuyla karşılaştırılır ve yeniden kullanılıp kullanılamayacağı kontrol edilir. Yalnızca mevcut olanlardan farklı olan Stil nesneleri her bir Workbook nesnesi için saklanır. Bu, her Excel dosyası için yalnızca birkaç yüz Stil nesnesi olduğu anlamına gelir, binlerce değil. Her bir hücre için yalnızca bir Stil nesnesi havuzuna bir indeks saklanır.

C#

Style style = cell.GetStyle();

style.Font.IsBold = true;

cell.SetStyle(style);

Gelişmiş Konular