メモとして。
方法としては「名前」と「ふりがな」データを持つクラスをつくり「ToString」では「名前」を返し、比較は「ふりがな」でするようにします。
StringWithClass.vb
<code>Imports System Imports System.Collections Public Class StringWithKanaClass ' IComparableインターフェイスをインプリメント Implements IComparable ' メンバ Public Name As String Public Kana As String Public Sub New() End Sub Public Sub New(ByVal Name As String, ByVal Kana As String) MyClass.Name = Name MyClass.Kana = Kana End Sub ' ToString()は「Name」を返す Public Overrides Function ToString() As String Return Name End Function '比較する関数 Public Function CompareTo(ByVal o As Object) As _ Integer Implements IComparable.CompareTo '自分と同じ型の場合のみ比較 If TypeOf o Is StringWithKanaClass Then Dim g As StringWithKanaClass = CType(o, StringWithKanaClass) Select Case Me.Kana.CompareTo(g.Kana) Case 0 Return 0 Case Is > 0 Return 1 Case Is < 0 Return -1 End Select End If Return 0 End Function End Class</code>
DetaGridViewのセルには以下のように代入
<code>DataGridView1(c, i).Value = New StringWithKanaClass("名前","なまえ")</code>
コメントを残す