我创建了一个未绑定的DatagridView,它们在运行时手动输入,并且应该是可编辑的。
使用命令DataGridView-&gt; Rows-&gt; Add(string,..)它可以正确地创建行,但它不允许我手动编辑值,即使它不是“只读”。< / p>
The code used for input:
private: System::Void ButtomSave_Click(System::Object^ sender, System::EventArgs^ e) {
String^ folderName;
/*DataGridViewComboBoxColumn^ cmbCol = gcnew DataGridViewComboBoxColumn;
cmbCol->HeaderText = "Sagital/Coronal";
cmbCol->Items->Add("-");
cmbCol->Items->Add("Sagital");
cmbCol->Items->Add("Coronal");
dataGridView1->Columns->Add(cmbCol);*/
FolderBrowserDialog^ folderBrowserDialog1 = gcnew FolderBrowserDialog;
folderBrowserDialog1->Description="Select the folder containing the image sequences folder";
// Do not allow the user to create new files via the FolderBrowserDialog.
folderBrowserDialog1->ShowNewFolderButton = false;
// Default to the My Documents folder.
folderBrowserDialog1->RootFolder = Environment::SpecialFolder::Personal;
if ( folderBrowserDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
{
folderName = folderBrowserDialog1->SelectedPath;
array<String^>^subdirectoryEntries = Directory::GetDirectories( folderName );
DataGridViewRow row;
System::Collections::IEnumerator^ myEnum = subdirectoryEntries->GetEnumerator();
while ( myEnum->MoveNext()){
dataGridView1->Rows->Add(myEnum->Current,"Sagital");
}
}
}
我的应用程序是使用C ++语言的Windows Forms编写的。
提前致谢
答案 0 :(得分:1)
问题解决了。我必须将整个datagridview设置为“只读”(我熟悉Qt)。
为了澄清我自己的问题,要使datagridview单元格可编辑,请右键单击它,然后是属性 - >行为部分 - &gt; ReadOnly-&gt; False(默认情况下为True)。
感谢您的回复
答案 1 :(得分:0)
你真的可以在行中添加一个字符串吗?您是否必须创建要添加到集合的Row对象?