ho montata su uno SL3 applicazione rapida ed è difficile avere il focus iniziale andare al UserControl figuriamoci a un controllo all'interno del controllo Silverlight.
Tuttavia, vedere se this solution risolve questo problema. Dovrai usare un piccolo JavaScript.
Ecco il codice di riferimento:
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Register Assembly="System.Web.Silverlight" Namespace="System.Web.UI.SilverlightControls"
TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" style="height:100%;">
<head runat="server">
<title>Test Page For TextFocusTest</title>
<script type="text/javascript">
window.onload = function()
{
document.getElementById('Xaml1').focus();
}
</script>
</head>
<body style="height:100%;margin:0;">
<form id="form1" runat="server" style="height:100%;">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<div style="height:100%;">
<asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/TextFocusTest.xap" Version="2.0" Width="100%" Height="100%" />
</div>
</form>
</body>
</html>
Una volta che il controllo di SL è attiva, è possibile impostare ulteriormente il focus a un controllo specifico usando qualcosa come:
namespace SilverlightApplication2
{
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
this.GotFocus += new RoutedEventHandler (MainPage_GotFocus);
}
void MainPage_GotFocus (object sender, RoutedEventArgs e)
{
uxLogin.Focus();
}
}
}
dove uxLogin è definito in XAML come:
<TextBox x:Name="uxLogin" Height="25" Width="100" />
fonte
2009-07-14 16:45:40
Questa soluzione sembra funzionare in IE, ma non riesco a ottenere il controllo Silverlight per guadagnare attenzione in Firefox o Chrome. –
Ancora non riesco a farlo funzionare in altri browser, ma ho intenzione di questa soluzione poiché la maggior parte degli utenti sarà in IE comunque e gli altri dovranno semplicemente fare clic sul controllo Silverlight. Grazie! –
il benvenuto. Ho avuto un sacco di problemi con Silverlight e FF - ridimensionamento e solo il controllo da visualizzare. In un caso, alla fine ho rinunciato e ho una soluzione per IE e un'altra per FF. Non è il modo migliore, ma vabbè. –