<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">
<rss version="0.91">
<channel>
<title>「DataGridViewのコンボボックスにユーザーが文字列を入力できるようにする」へのコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;id=datagridview%2Fcomboboxdropdownstyle.html</link>
<description>「DataGridViewのコンボボックスにユーザーが文字列を入力できるようにする」に投稿されたコメントの一覧</description>
<language>ja</language>
<image>
<url>https://dobon.net/banner/dbs1.gif</url>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;id=datagridview%2Fcomboboxdropdownstyle.html</link>
<title>「DataGridViewのコンボボックスにユーザーが文字列を入力できるようにする」へのコメント</title>
<width>88</width>
<height>31</height>
</image>
<item>
<title>通常のコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;id=datagridview%2Fcomboboxdropdownstyle.html#8</link>
<description><![CDATA[&gt;&gt;末尾の行を編集後、Enterを押した場合、CellValidatingが実行されず動作しないようです。<br>&gt;何か良い方法はないのでしょうか。。<br><br>http://dobon.net/vb/dotnet/datagridview/textboxevent.html<br>こちらの方法で(適宜DataGridViewComboBoxEditingControlに置き換えて)キーイベントを捕捉し、<br>dataGridViewTextBox_KeyPressの中で<br><br>private void dataGridViewTextBox_KeyPress(object sender, KeyPressEventArgs e)<br>{<br>    DataGridViewComboBoxEditingControl cb = (DataGridViewComboBoxEditingControl)sender;<br>     if (dataGridView1.CurrentCell.OwningColumn.Name == &quot;ComboBox&quot; &amp;&amp;<br>         dataGridView1.CurrentCell.OwningColumn is DataGridViewComboBoxColumn)<br>    {<br>        cb.DroppedDown = false;<br>    }<br>}<br><br>としてドロップダウンリストを消すことでうまくいきました。]]></description>
</item>
<item>
<title>通常のコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#7</link>
<description><![CDATA[&gt;末尾の行を編集後、Enterを押した場合、CellValidatingが実行されず動作しないようです。<br><br>何か良い方法はないのでしょうか。。]]></description>
</item>
<item>
<title>通常のコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#6</link>
<description><![CDATA[&gt;リストにない文字列を打ちEnterを押下すると<br>&gt;なぜかe.FormattedValueには&quot;&quot;（空文字）が入ってきてし<br>&gt;まいます<br><br>DroppedDown = Flase <br><br>にすれば上手くいくと思います。]]></description>
</item>
<item>
<title>通常のコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#5</link>
<description><![CDATA[末尾の行を編集後、Enterを押した場合、CellValidatingが実行されず動作しないようです。]]></description>
</item>
<item>
<title>通常のコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#4</link>
<description><![CDATA[いつも参考にさせて頂いています。<br><br>こちらのソースを実装し色々テストしてみたのですが、１点どうしてもできない操作がありました。<br>コンボボックスセルにフォーカスがあたった状態で「Alt」+「↓」キーでリストを表示し、<br>その状態でリストにない文字列を打ちEnterを押下すると<br>なぜかe.FormattedValueには&quot;&quot;（空文字）が入ってきてしまいます。<br><br>どうにもできないのでしょうか・・・。]]></description>
</item>
<item>
<title>評価の理由</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#3</link>
<description><![CDATA[評価：良い<br>Thankyou, for helping me out... :)<br><br>cheers.]]></description>
</item>
<item>
<title>通常のコメント</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#2</link>
<description><![CDATA[こんにちわ。<br>ここを参考にセル単位に改造してでやってみようとしたのですがなかなかうまくいかず苦労しました・・・<br>で、最終的に英文のサイトで見つけた手法を使って無事<br>解決したので後学の為書いておきます。(あと忘れた頃の自分の為に(^_^； )<br>	private: void DataGridView_CellValidating(System::Object^ sender, DataGridViewCellValidatingEventArgs^ e)<br>		{<br>			DataGridView^ dgv = (DataGridView^)sender;<br><br>			if ( dgv-&gt;CurrentCell-&gt;GetType() == DataGridViewComboBoxCell::typeid )<br>			{<br>				DataGridViewComboBoxCell^ cell = (DataGridViewComboBoxCell^)dgv-&gt;CurrentCell;<br><br>				System::Object^ eFV = e-&gt;FormattedValue;<br>				if ( !cell-&gt;Items-&gt;Contains(eFV) )<br>				{<br>					cell-&gt;Items-&gt;Insert( 0, eFV );<br>					if ( dgv-&gt;IsCurrentCellDirty )<br>					{<br>						// メモ<br>	// どうもセル単位でやるときは、CommitEditが重要みたい。<br>	// http://www.dotnetmonster.com/Uwe/Forum.aspx/winform/18917/Need-to-create-new-row-in-DataGridView<br>	// 情報源は↑ここ。<br>						dgv-&gt;CommitEdit( DataGridViewDataErrorContexts::Commit );//これがミソかも<br>						cell-&gt;Value = cell-&gt;Items[0];<br>					}<br>				}<br>			}<br>		}<br>あ、c++/cli なので適当に読み替えてください(^と-&gt;とタイプの比較を除けば殆ど一緒。)]]></description>
</item>
<item>
<title>評価の理由</title>
<link>https://dobon.net/cgi-bin/pc/pc.php?mode=v&amp;amp;id=datagridview%2Fcomboboxdropdownstyle.html#1</link>
<description><![CDATA[評価：悪い<br>編集できるようになりましたが、<br>enterで確定すると元に戻るけーすがあります。<br>行ヘッダの▲が鉛筆（編集モード）にならないときは<br>反映されません。<br>行ヘッダの▲が鉛筆（編集モード）になったときは<br>反映されます。]]></description>
</item>
</channel>
</rss>