Этого можно добиться, используя свойство Browser
объекта HttpRequest
.
На вашей странице могут быть оба пользовательских элемента управления, расположенные во время разработки, затем во время выполнения вы проверяете свойство Request.Browser
, чтобы определить браузер клиента и программно скрыть пользовательский элемент управления, который пользователь не должен видеть .
Кроме того, вы можете создать экземпляр и отобразить правильный пользовательский элемент управления (опять же, после проверки свойства Request.Browser
) исключительно из кода на стороне сервера.
Например, запустив следующий код:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(Request.Browser.Type.ToString());
}
}
На «стандартной» странице ASPX отображаются:
IE7
при запуске в Internet Explorer 7 и:
Firefox3.5.3
(при запуске в Firefox)
Итак, на веб-странице вы могли бы написать что-то вроде следующего, к которому вы хотите добавить эту функциональность:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Request.Browser.Type.ToString().ToLower().Contains("ie"))
{
// User's browser is Internet Explorer.
// Let's hide UserControl1 but display UserControl1
WebUserControl1.Visible = false;
WebUserControl2.Visible = true;
}
else
{
// User's browser is something other than Internet Explorer.
// Let's hide UserControl2 but display UserControl1.
WebUserControl1.Visible = true;
WebUserControl2.Visible = false;
}
}
}