데이터 그리드 뷰를 설정하고이를 데이터에 연결하고 어댑터로 채우고 모두 잘 작동합니다. 내가 뭘하고 싶은지 데이터 그리드보기의 시작 부분에 열을 추가하고 현재 첫 번째 열의 파일 이름을 가진 첫 번째 열에 두 번째 열로 바람을 것입니다 이미지를 추가합니다.데이터 세트 테이블 아답터와 별도로 datagridview 열 채우기
필자는 열을 추가하고 이미 이미지 용으로 설정했으며 값이 설정되지 않은 경우 기본 이미지도 설정했습니다. column2에있는 내용을 읽는 방법을 알아내는 데 어려움을 겪고 있습니다. 그리고 파일 이름 (내 명명 체계와 일치시키기 위해 약간 편집 됨)을 사용하여 이미지를로드하여 column1에로드하는 중입니다. 그리드 뷰, datetettableadapter 또는 다른 장소에서이 작업을 수행해야하는지 알 수 없습니다. iterating 시도한 cell2 다음 cell1에 대한 이미지를로드하려면 행을 던져 봤지만 currentrow 설정할 수 없습니다.
CellFormating이 나에게 이상한 결과를 주었기 때문에 CellPainting을 사용하게되었습니다. 아래는 내가 사용하는 코드입니다. 셀 [0]은 이미지를 넣으려는 셀입니다. 셀 [1]은 파일 이름으로 사용하는 이미지의 이름입니다.
private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
{
string monsterName = "";
try
{
if (this.dataGridView1.Columns[e.ColumnIndex].Name == "monsterNameDataGridViewTextBoxColumn")
{
if (e.Value != null && e.RowIndex > -1)
{
monsterName = (string)this.dataGridView1.Rows[e.RowIndex].Cells[1].Value;
this.dataGridView1.Rows[e.RowIndex].Cells[0].Value = new Bitmap(@"C:\Users\Chad\Pictures\Dark Summoner\C_" + monsterName + @".png");
}
}
}
catch (ArgumentException)
{
toolStripStatusLabel1.Text = monsterName + " image file does not exist.";
}
}
포스터에서 제거되었습니다. –