media player为什么变量代替的值和字符串相等,但是。。。。。。
private void wmpMusic_Enter(object sender, EventArgs e){
wmpMusic.URL = @"E:/mp3/静静的.mp3";
wmpMusic.Ctlcontrols.play();
txtSearch.Text = Convert.ToString(lvSearch.SelectedItems[0].Tag);
}
@"E:/mp3/静静的.mp3";
和Convert.ToString(lvSearch.SelectedItems[0].Tag);
输出的值是相等的,但是@"E:/mp3/静静的.mp3";
可以播放音乐,但是Convert.ToString(lvSearch.SelectedItems[0].Tag);
不可!这是全代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace Music
{
public partial class frmMain : Form
{
private DBOperation db = new DBOperation();
private DataSet ds;
private DataView dv;
private string message = string.Empty;
public frmMain()
{
InitializeComponent();
}
private void frmMain_Load(object sender, EventArgs e)
{
ds = db.GetMusicInfo(ref message);
if (ds.Tables.Count<=0)
{
MessageBox.Show(message);
return;
}
dv = new DataView(ds.Tables[0]);
lvSearch.Items.Clear();
foreach (DataRow row in dv.Table.Rows)
{
ListViewItem lvi = new ListViewItem();
lvi.Text = row["music"].ToString();
lvi.Tag = row["Url"].ToString();
lvi.SubItems.AddRange(new string[] { row["singer"].ToString()});
lvSearch.Items.Add(lvi);
}
}
private void wmpMusic_Enter(object sender, EventArgs e)
{
wmpMusic.URL = Convert.ToString(lvSearch.SelectedItems[0].Tag);
wmpMusic.Ctlcontrols.play();
txtSearch.Text = Convert.ToString(lvSearch.SelectedItems[0].Tag);
}
private void btnSearch_Click(object sender, EventArgs e)
{
string filter = "";
filter = string.Format("music='{0}' or singer='{1}'", txtSearch.Text.Trim(), txtSearch.Text.Trim());
dv.RowFilter = filter;
lvSearch.Items.Clear();
foreach (DataRowView row in dv)
{
ListViewItem lvi = new ListViewItem();
lvi.Text = row["music"].ToString();
lvi.Tag = row["Url"].ToString();
lvi.SubItems.AddRange(new string[]{row["singer"].ToString()});
lvSearch.Items.Add(lvi);
}
}
private void lvSearch_SelectedIndexChanged(object sender, EventArgs e)
{
wmpMusic.URL = Convert.ToString(lvSearch.SelectedItems[0].Tag);
wmpMusic.Ctlcontrols.play();
txtSearch.Text = Convert.ToString(lvSearch.SelectedItems[0].Tag);
}
}
}
--------------------编程问答-------------------- 先把 lvSearch.SelectedItems[0].Tag 做字符串替换, / 替换为 \/ 看 --------------------编程问答-------------------- 输出lvSearch.SelectedItems[0].Tag.ToString()看看是什么,检查下是不是转义字符的问题 --------------------编程问答-------------------- txtSearch.Text = Convert.ToString(lvSearch.SelectedItems[0].Tag);
输出值和字符串一模一样!
但就不知道为什么?
补充:.NET技术 , C#