3つのバインドされていないDataGridViewコントロールを使用して特定の情報を表示しています。これらのDGVに情報をロードするには、暗号化されたファイルから情報を引き出し、解読して情報を解析し、その情報でDGVを埋めようとしています。ファイルからの読み込みは、メニュー項目のクリックによって呼び出されます。特に名前を付けないで、バインドされていないDataGridViewを参照していますか?
Private Sub miCLoad_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles miCLoad.Click
Dim FilePath As String = "C:\FList\CList.clt"
Dim LoadFile As New SaveandLoad.SaveAndLoad
Dim FileRead As New Simple3Des("MyPassword")
Dim FileString As String = FileRead.ReadFile(FilePath)
With LoadFile
.WhichList = dgCourses
.FilePath = FilePath
.DecryptedString = FileRead.DecryptData(FileString)
.dgList = dgCourses
End With
Call LoadFile.LoadFile()
End Sub
Public Class SaveandLoad
Public Property WhichList As New DataGridView
Public Property FilePath As String
Public Property DecryptedString As String
Public Property EncryptedString As String
Public Property dgList As Control
Public Sub LoadFile()
Dim dgRow As DataGridViewRow
Dim dgCell As DataGridViewTextBoxCell
Dim Lines() As String = DecryptedString.Split(vbLf)
Dim LinesList As List(Of String) = Lines.ToList
LinesList.RemoveAt(Lines.Length - 1)
For Each Line As String In LinesList
Dim Fields() As String = Line.Split(",")
dgRow = New DataGridViewRow
For x = 0 To (WhichList.Columns.Count - 1) Step 1
dgCell = New DataGridViewTextBoxCell
dgCell.Value = Fields(x).ToString
dgRow.Cells.Add(dgCell)
Next
WhichList.Rows.Add(dgRow)
Next
Select Case WhichList.Name
Case "dgCourses"
frmFacultyList.dgCourses = WhichList
frmFacultyList.dgCourses.Refresh()
WhichList.Dispose()
Case "dgFList"
frmFacultyList.dgFList = WhichList
frmFacultyList.dgFList.Refresh()
WhichList.Dispose()
Case "dgSList"
frmFacultyList.dgSList = WhichList
frmFacultyList.dgSList.Refresh()
WhichList.Dispose()
End Select
MsgBox("List Successfully Loaded", vbOKOnly, "Load")
End Sub
が、私は「SELECT CASE」または「IF-THEN」ステートメントを使用せずにDGVを参照することができる(または塗りつぶし)したい:ここでは私がこれまで持っているものです。将来的に追加される他の多くのDGVを追加すると、これは非効率的になります。したがって、タイトルが主な質問です。私はここで、2010年
他の人の質問に答えることで私自身の質問に答えたようです。私は、単にメインフォームのコントロールコレクションのインスタンスを作成し、そこからそれぞれを実行することができました。誰かがコード例を思いつくことができれば、私はあなたに信用を与えるでしょう。そうでなければ、私は明日自分の質問に答えます(私ができる前に8時間待たなければなりません)。 –