98 lines
3.2 KiB
C#
98 lines
3.2 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Web;
|
|||
|
using System.Web.UI;
|
|||
|
using System.Web.UI.WebControls;
|
|||
|
using System.IO;
|
|||
|
|
|||
|
namespace FineUIPro.Web
|
|||
|
{
|
|||
|
public partial class source : PageBase
|
|||
|
{
|
|||
|
protected void Page_Init(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!IsPostBack)
|
|||
|
{
|
|||
|
string files = Request.QueryString["files"];
|
|||
|
|
|||
|
if (String.IsNullOrEmpty(files))
|
|||
|
{
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
if (!String.IsNullOrEmpty(files))
|
|||
|
{
|
|||
|
string[] fileNames = files.Split(';');
|
|||
|
|
|||
|
for (int i = 0; i < fileNames.Length; i++)
|
|||
|
{
|
|||
|
string fileName = fileNames[i].Trim();
|
|||
|
if (String.IsNullOrEmpty(fileName))
|
|||
|
{
|
|||
|
continue;
|
|||
|
}
|
|||
|
|
|||
|
// 处理编辑页面,类似 /demo_pro/grid/grid_newtab_window.aspx?id=101&name=张三
|
|||
|
int lastQuestionMaskPosition = fileName.IndexOf("?");
|
|||
|
if (lastQuestionMaskPosition >= 0)
|
|||
|
{
|
|||
|
fileName = fileName.Substring(0, lastQuestionMaskPosition);
|
|||
|
}
|
|||
|
|
|||
|
string shortFileName = GetShortFileName(fileName);
|
|||
|
string iframeUrl = "./source_file.aspx?file=" + fileName;
|
|||
|
|
|||
|
Tab tab = new Tab
|
|||
|
{
|
|||
|
Title = shortFileName,
|
|||
|
EnableIFrame = true,
|
|||
|
IFrameUrl = iframeUrl
|
|||
|
};
|
|||
|
tab.IconUrl = GetIconUrl(tab.IFrameUrl);
|
|||
|
TabStrip1.Tabs.Add(tab);
|
|||
|
|
|||
|
// End with .aspx.
|
|||
|
if (fileName.ToLower().EndsWith(".aspx")
|
|||
|
|| fileName.ToLower().EndsWith(".ascx")
|
|||
|
|| fileName.ToLower().EndsWith(".master")
|
|||
|
|| fileName.ToLower().EndsWith(".ashx"))
|
|||
|
{
|
|||
|
tab = new FineUIPro.Tab
|
|||
|
{
|
|||
|
Title = shortFileName + ".cs",
|
|||
|
EnableIFrame = true,
|
|||
|
IFrameUrl = iframeUrl + ".cs"
|
|||
|
};
|
|||
|
tab.IconUrl = GetIconUrl(tab.IFrameUrl);
|
|||
|
TabStrip1.Tabs.Add(tab);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
protected void Page_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
private string GetIconUrl(string url)
|
|||
|
{
|
|||
|
string suffix = url.Substring(url.LastIndexOf('.') + 1);
|
|||
|
return "~/res/images/filetype/vs_" + suffix + ".png";
|
|||
|
}
|
|||
|
|
|||
|
private string GetShortFileName(string fileName)
|
|||
|
{
|
|||
|
int index = fileName.LastIndexOf("/");
|
|||
|
|
|||
|
if (index >= 0)
|
|||
|
{
|
|||
|
return fileName.Substring(index + 1);
|
|||
|
}
|
|||
|
|
|||
|
return fileName;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|