投稿者 魔界の仮面弁士  (社会人) 投稿日時 2021/4/23 01:01:06
> Windows の自動更新が勝手に行われてからのように思うのですが
自分は、半角カナの問題を聞いたことがあるという程度ですね…。

https://twitter.com/Benshi_Orator/status/1326689347127500800

https://social.msdn.microsoft.com/Forums/ja-JP/4e6223e2-34d0-4a5f-bb61-109bc28040b6/windows-10-1249612540124721251912531-2004-20h1-20h2-1997812391


> とした検索処理で、例えば、これまで「やまだ」で検索できていたものが

手元の環境ではこんな結果になりました。
Windows 10 20H2、.NET Framework 4.8 です。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim tbl As New DataTable() With {.CaseSensitive = True}
    tbl.Columns.Add("ID").AutoIncrement = True
    tbl.Columns.Add("名前").AllowDBNull = False
    tbl.PrimaryKey = New DataColumn() {tbl.Columns("ID")}
    For Each nm In New String() {"やまだたろう""やまた゛はなたろう"}
        Dim r = tbl.NewRow()
        r.SetField(Of String)("名前", nm)
        tbl.Rows.Add(r)
    Next
    tbl.AcceptChanges()
    If RadioButton1.Checked Then
        ' "やまだたろう" と "やまた゛はなたろう" 
        tbl.DefaultView.RowFilter = Nothing
    ElseIf RadioButton2.Checked Then
        ' "やまだたろう" のみ 
        tbl.DefaultView.RowFilter = "名前 LIKE '%やまだ%'"  ' U+3060「だ」 
    ElseIf RadioButton3.Checked Then
        '  "やまた゛はなたろう" のみ 
        tbl.DefaultView.RowFilter = "名前 LIKE '%やまだ%'"  ' U+305F U+3099「だ」 
    ElseIf RadioButton4.Checked Then
        '  "やまた゛はなたろう" のみ 
        tbl.DefaultView.RowFilter = "名前 LIKE '%やまた゛%'" ' U+305F U+309B「た゛」 
    ElseIf RadioButton5.Checked Then
        '  "やまた゛はなたろう" のみ 
        tbl.DefaultView.RowFilter = "名前 LIKE '%やまだ%'" ' U+305F U+FF9E「だ」 
    End If
    DataGridView1.DataSource = tbl
End Sub



ただし、対象の .NET Framwork を 4.8 から 3.5 に変更すると動作が変わり、
RadioButton1~5 のいずれのケースにおいても、
"やまだたろう" と "やまた゛はなたろう" の両方が表示されました。