WinForms アプリケーションのコンボボックス コンポーネントにいくつかのフラッシュ ファイルがリストされています。ファイルが選択されている場合、webBrowser コンポーネントで再生する必要があります。コードは次のとおりです。
コンボボックスへのファイルの追加:
private void Form1_Load(object sender, EventArgs e)
{
string[] filePaths = Directory.GetFiles(@"c:\folder\");
foreach (string s in filePaths)
{
comboBox1.Items.Add(s);
}
}
フラッシュ ファイルの再生:
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.webBrowser1.Navigate(comboBox1.SelectedText); //it doesnt work
}
フラッシュファイルは正常に開くことができますが、コンボボックスから選択した値を渡すことができないようです。
アップデート
このイベントが機能していることを確認するために、次のように変更しました。
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.textBox1.Text = "adsfadsf";
this.textBox2.Text = comboBox1.SelectedText;
}
選択した項目を変更すると、文字列 adsfadsf が textBox1 に表示されますが、textBox2 は空のままです。
更新2
完全なコードは次のとおりです。
using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace App1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
string[] filePaths = Directory.GetFiles(@"c:\folder\");
foreach (string s in filePaths)
{
comboBox1.Items.Add(s);
}
}
private void label1_Click(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.textBox2.Text = "adsfadsf";
this.textBox1.Text = comboBox1.SelectedText;
// this.webBrowser1.Navigate(comboBox1.SelectedText);
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
}
}