PowerTools MultiRow for Windows Forms 8.0J
半角文字の均等割付のカスタマイズ

既定では、半角文字に均等割付を使用するとスペース部分が広がる形になりますが、ITextAdjustmentProviderインターフェイスを使用すると半角文字をセル内に均等に表示できます。



均等割付のカスタマイズ
半角文字をセル内に均等に表示するには、ITextAdjustmentProviderインターフェイスを実装するクラスを作成します。

Imports GrapeCity.Win.MultiRow

Public Class DistributeEveryChar
    Implements ITextAdjustmentProvider

    Public Function GetTextElements(text As String) As System.Collections.Generic.IEnumerable(Of String) Implements ITextAdjustmentProvider.GetTextElements
        Dim textElements As New List(Of String)()

        For i As Integer = 0 To text.Length - 1
            textElements.Add(text(i).ToString())
        Next
        Return textElements
    End Function
End Class
using GrapeCity.Win.MultiRow; 

public class DistributeEveryChar : ITextAdjustmentProvider
{
    public IEnumerable<string> GetTextElements(string text)
    {
        List<string> textElements = new List<string>();

        for (int i = 0; i < text.Length; i++)
        {
            textElements.Add(text[i].ToString());
        }
        return textElements;
    }
}
均等割付の設定
均等割付のカスタマイズのために作成したITextAdjustmentProviderインターフェイスを実装したクラスは、CellStyle.TextAdjustmentProviderプロパティに設定します。

GcMultiRow1(0, 0).Style.UseCompatibleTextRendering = MultiRowTriState.True
GcMultiRow1(0, 0).Style.TextAdjustment = TextAdjustment.DistributeWithSpace
GcMultiRow1(0, 0).Style.TextAdjustmentProvider = New DistributeEveryChar()
gcMultiRow1[0, 0].Style.UseCompatibleTextRendering = MultiRowTriState.True;
gcMultiRow1[0, 0].Style.TextAdjustment = TextAdjustment.DistributeWithSpace;
gcMultiRow1[0, 0].Style.TextAdjustmentProvider = new DistributeEveryChar();
   
参照

 

 


© 2008-2015 GrapeCity inc. All rights reserved.