スキャン デバイス用の C# アプリケーションを開発していて、問題が発生しました。アプリケーションが実行されるたびにサーバーから取得するxmlファイルから構成設定を取得します。ただし、構成が間違っていると、サーバーの URL が xml にあるため、新しい構成を要求できません。そこで、編集機能が欲しいと思いました。構成を表示する方法は次のとおりです。
private void list()
{
if (this.listViewConf.Items.Count != 0)
this.listViewConf.Items.Clear();
this.addItem("Operator", Data.cuser);
this.addItem("Warehouse", Data.cware);
this.addItem("Server URI", Config.uri(Config.socket));
this.addItem("Timeout", Config.get(Config.socket, Config.atime));
this.addItem("Config file", Config.path("config.xml"));
this.addItem("Data backup", Config.path("data.xml"));
this.listViewConf.Visible = true;
}
private void addItem(String name, String value) {
ListViewItem item = new ListViewItem();
item.Text = name;
item.SubItems.Add(value);
this.listViewConf.Items.Add(item);
}
listViewConf は ListView です。私の質問は - ListView のどの行が選択されているかを知る方法 ([編集] ボタンがある場合)、さらに重要なのは、xml ファイルを編集する方法です。ListView は Name | Name で構成されます。値のペアと、サンプルの config.xml を次に示します。
<?xml version="1.0" encoding="utf-8" ?>
<wms>
<setup>
<config path="/Flash File Store/WMS/" file="config.xml" />
<socket path="http://ware.aip/interface/ck/" file="socket.php" timeout="10000" />
</setup>
<users>
<user id="1" code="01" name="User" ware="1" />
</users>
<warehouses>
<ware id="1" code="T" name="Test" />
</warehouses>
<tasktypes>
<type id="1" code="T" name="Test" />
</tasktypes>
</wms>
また、編集可能な ListView を作成できることはわかっていますが、より簡単な解決策 (編集ボタンなど) があれば、喜んで使用します。よろしくお願いします。