O controle de usuário do botão ícone foi desenvolvido para as seguintes operações comuns:
--------------------------
A página foi salva [icon + button] ou [ImageButton] para realizar a função geral de salvamento. Depois de clicar na operação de salvamento, a verificação js dos campos relevantes da página pode ser realizada primeiro e, em seguida, o envio em segundo plano pode ser realizado após a verificação. é passado. Ele pode responder a mudanças de estilo sob onmouseover e outros eventos.
O controle de usuário do botão ícone desenvolvido deve atender pelo menos aos seguintes requisitos funcionais:
------------------------------------------
1. Composto por ícones + texto
O caminho do ícone pode ser modificado para ficar vazio, o que significa que não há ícone.
A exibição de texto pode ser modificada
2. Todo o sistema precisa responder e processar o evento onclick do js definido para o “botão ícone” na página onde ele está localizado.
Se não houver nenhum evento onclick que precise ser tratado, ele não será processado.
3. A necessidade geral de responder e lidar com o evento OnClick do servidor
Se não houver nenhum evento OnClick que precise ser tratado, ele não será processado.
4. A resposta geral precisa ser Desativada
Visível é inerente ao próprio controle
5. Necessidade de responder às mudanças de estilo em eventos como onmouseover
A seguir está uma breve explicação do método
1. Crie o controle de usuário [botão de texto do ícone]
O controle contém as seguintes partes:
Controle de layout de mesa,
Espaço reservado para imagem de saída dinâmica,
Espaço reservado para texto de saída dinâmica,
Botão oculto que é acionado em resposta ao evento OnClick
<tabela>
<tr runat="servidor" id="tr1" style="cursor:hand;" >
<td>
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
</td>
<td>
<asp:Literal ID="Literal2" runat="server"></asp:Literal>
</td>
</tr>
</tabela>
<asp:Button ID="Button1" runat="server" Text="Button" style="display:none; width:0; height:0;" OnClick="Button1_Click" />
Você pode adicionar processamento de estilo onmouseover relacionado à tabela
Contém os seguintes atributos e processamento relacionados
classe parcial pública WebUserControl: System.Web.UI.UserControl
{
#region Propriedades e eventos
//Texto do botão do controle do usuário do botão de texto do ícone
string _strButtonText = "Espaço reservado para botão";
string pública strButtonText
{
definir {_strButtonText = valor};
obter {retornar _strButtonText};
}
//Caminho do ícone do controle do usuário do botão de texto do ícone
string _strImageSrc = "";
string pública strImageSrc
{
definir {_strImageSrc = valor};
obter {retornar _strImageSrc;
}
//Desabilitado do controle
bool _UCDisabled = falso;
bool públicoUCDisabled
{
definir
{
this.tr1.Disabled = valor;
_UCDisabled = valor;
}
obter {retornar _UCDisabled};
}
//Uma função de processamento que responde ao evento onclick js
string _strOnClickJSFun = "";
string pública strOnClickJSFun
{
definir {_strOnClickJSFun = valor};
obter {retornar _strOnClickJSFun};
}
//Resposta ao evento OnClick no lado do servidor
delegado público void userEvent (remetente do objeto, EventArgs e);
evento público userEvent UCOnClick;
protegido vazio Button1_Click (objeto remetente, EventArgs e)
{
if (this.UCOnClick! = nulo)
isto.UCOnClick(este, e);
}
#endregion
protegido void Page_Load (remetente do objeto, EventArgs e)
{
se (!IsPostBack)
{
if (_strButtonText! = "")
{
this.Literal2.Text = _strButtonText;
}
if (_strImageSrc! = "")
{
this.Literal1.Text = "<img id='" + this.UniqueID + "Image1' src='" + _strImageSrc + "' />";
}
if(UCDesabilitado)
retornar;
if (_strOnClickJSFun! = "")
{
string strjsfun = _strOnClickJSFun.Replace(";", "").Replace("return ", "");
if (this.UCOnClick! = nulo)
{
this.tr1.Attributes.Add("onclick", "if(" + strjsfun + "){document.all." + this.UniqueID + "_Button1.click();}");
}
outro
{
this.tr1.Attributes.Add("onclick", strjsfun);
}
}
outro
{
if (this.UCOnClick! = nulo)
{
this.tr1.Attributes.Add("onclick", "document.all." + this.UniqueID + "_Button1.click();");
}
}
}
}
}
2. Use o controle de usuário [botão de texto do ícone]
<uc1:WebUserControl ID="WebUserControl1" runat="servidor" OnUCOnClick="Button1_Click" strOnClickJSFun="return fn_Check();"
strButtonText="Modificar" strImageSrc="../Images/Edit.gif" />