2010年7月30日 星期五

Windows Server 2008 Standard + IIS7 + ASP.NET 中文亂碼

進入IIS => .net全球化
將預設的utf-8
全部改成big5就ok了!

2010年7月26日 星期一

VC 9.0 runtime (X86) 安裝失敗

最近公司新案子要使用Team Foundation 2010
本想先下載試用版案裝看看 安裝的環境是Server 2008
結果一直卡在必要安裝的VC 9.0 runtime (X86) 安裝失敗
後來將下載的ISO檔燒成DVD 由光碟安裝就解決了
雖然不曉得為什麼 但這就是解決的方法...

2010年7月1日 星期四

Visual Studio 2008 無法 設定為啟始頁

專案發生了一件很吊詭的事
按開始偵錯鈕的時候 應該會直接run專案顯示啟始頁
因為我的案子是開Silverlight專案
他啟始頁會一直跑Silverlight測試頁出來
沒辦法顯示我設定好的啟始頁
解決的辦法就是先將Silverlight專案的資料夾先移除
Compiler後 再新增即可恢復

2010年6月28日 星期一

Gridview 無資料時顯示標頭 header

//dt為DataTable判斷是否為0筆資料
if (dt.Rows.Count == 0)
{
dt.Columns[1].AllowDBNull = true;
dt.Rows.Add(dt.NewRow());
GridView1.DataSource = dt;
GridView1.DataBind();
int columnCount = GridView1.Rows[0].Cells.Count;
GridView1.Rows[0].Cells.Clear();
GridView1.Rows[0].Cells.Add(new TableCell());
GridView1.Rows[0].Cells[0].ColumnSpan = columnCount;
GridView1.Rows[0].Cells[0].Text = "無資料!";
GridView1.RowStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
}
else
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
參考至:http://blog.finalevil.com/2008/11/aspnetgridview01.html

2010年6月23日 星期三

使用 window.showModalDialog 無法彈出視窗問題

//showModalDialog_1.aspx 新增一個iframe

//按鈕內容
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
String filename = hidden2.Value + "_" + hidden1.Value + ".xls";
Response.Write("<script language=javascript>window.location.href='download.aspx?check=true&filename="+ filename +"';</script>");
}
//download.aspx 的page_load加上以下內容
//(必須判斷網頁傳值,不然畫面會無限postback)
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["check"] == "true")
{
String filename = Request.QueryString["filename"];
Response.Redirect("~\\E_mail\\attached\\" + filename);
}}

寫給自已看... showModalDialog 與 LinkButton doPostBack

function upload1() {
var cust_no = document.getElementById("Label10");
returnValue = window.showModalDialog("../E_upload/upload_1.aspx", cust_no.innerText, "dialogWidth=450px;dialogHeight=350px");
}
jQuery(document).ready(function() {
var tmp = window.dialogArguments;
//mail_no
var hidden1 = document.getElementById("hidden1");
//rfq_no
var hidden2 = document.getElementById("hidden2");
var tmparray = tmp.split(",");
var hidden3 = document.getElementById("hidden3");
hidden1.value = tmparray[0];
hidden2.value = tmparray[1];
if (hidden3.value != "load") {
hidden3.value = "load";
__doPostBack('LinkButton2', '');
}
});

DataTable 匯出excel

protected void export_excel(DataTable dt, String filename)
{
System.IO.StringWriter sw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
GridView gv = new GridView();
Response.Clear();
Response.AppendHeader("Content-Disposition", "attachment; filename= " + filename + ".xls");
Response.ContentType = "application/vnd.ms-excel";
Response.Charset = "utf-8";
//避免文數字問題(004 => 4),強制轉文字
Response.Write(" <style>");
Response.Write("td{mso-number-format:\"\\@\";}");
Response.Write("</style>");
gv.DataSource = dt;
gv.DataBind();
gv.RenderControl(hw);
Response.Write(sw.ToString());
Response.End();
}