您的位置:首页 > 其它

wpf实现简单媒体播放效果

2013-05-23 10:17 417 查看
前台:

string root = "", pathMedia = "";
StringBuilder sb = new StringBuilder();
List<string> str8 = new List<string>();
byte[] bs;
string path = "D:\\";
public Window3()
{
InitializeComponent();
InitPath();
}
public void InitPath()
{

}
private void listView1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
string fileName = this.listView1.SelectedValue.ToString();
this.mediaElement1.Source = new Uri(path + "//" + fileName);
this.mediaElement1.Play();
}

private void MenuItem_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog ofp = new OpenFileDialog();
ofp.Multiselect = true;
ofp.ShowDialog();
if (ofp.FileName == "")
{
MessageBox.Show("请选择正确的文件");
return;
}

for (int i = 0; i <= ofp.FileNames.Count() - 1; i++)
{
sb.Append(ofp.FileNames[i]);
sb.Append("\r\n");
if (ofp.SafeFileNames[i] != "")
{
listView1.Items.Add(ofp.SafeFileNames[i]);
str8.Add(ofp.FileNames[i].Substring(0, ofp.FileNames[i].LastIndexOf("\\") + 1));
}
}
FileStream fs = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "\\媒体列表.txt", FileMode.Append, FileAccess.Write, FileShare.ReadWrite);
bs = Encoding.Default.GetBytes(sb.ToString());
fs.Write(bs, 0, bs.Length);
fs.Flush();
fs.Close();

}

private void MenuItem_Click_1(object sender, RoutedEventArgs e)
{
try
{
FileStream fs1 = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "\\媒体列表.txt", FileMode.OpenOrCreate, FileAccess.Read, FileShare.ReadWrite);
byte[] bt = new byte[fs1.Length];
fs1.Read(bt, 0, bt.Length);
fs1.Dispose();
string str = Encoding.Default.GetString(bt);
string[] s = str.Split(new string[] { "\r\n" }, StringSplitOptions.None);
List<string> list = new List<string>(s);
if (listView1.SelectedItem != null)
{
for (int i = 0; i < s.Length - 1; i++)
{
if (s[i].Contains(listView1.SelectedItem.ToString()))
{
list.RemoveAt(i);
}
}
}
s = (string[])list.ToArray();
FileInfo file = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "\\媒体列表.txt");
file.Refresh();
file.Delete();
List<string> li = new List<string>();
li = s.Distinct().ToList();
StringBuilder sb = new StringBuilder();
for (int i = 0; i <= li.Count - 1; i++)
{
sb.Append(li[i]);
sb.Append("\r\n");
}
FileStream fs2 = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "\\媒体列表.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
bs = Encoding.Default.GetBytes(sb.ToString());
fs2.Write(bs, 0, bs.Length);
fs2.Flush();
fs2.Close();
}
catch
{

}

listView1.Items.Remove(listView1.SelectedItem);

}

private void MenuItem_Click_2(object sender, RoutedEventArgs e)
{
listView1.Items.Clear();
FileInfo file = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "\\媒体列表.txt");
file.Refresh();
file.Delete();

}

private void Window_Loaded(object sender, RoutedEventArgs e)
{

}
private void button3_Click(object sender, RoutedEventArgs e)
{
if (button3.Content.ToString() == "播 放")
{
mediaElement1.Play();
button3.Content = "暂 停";
}
else
{
mediaElement1.Pause();
button3.Content = "播 放";
}
}

private void button4_Click(object sender, RoutedEventArgs e)
{
this.mediaElement1.Stop();
}

private void button5_Click(object sender, RoutedEventArgs e)
{
mediaElement1.Position = mediaElement1.Position + TimeSpan.FromSeconds(10);
}

private void button6_Click(object sender, RoutedEventArgs e)
{
mediaElement1.Position = mediaElement1.Position - TimeSpan.FromSeconds(10);
}


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐