Fala, galera!!
Hoje irei mostrar como ordenar os dados de um gridview utilizado pelo Asp.Net Dynamic Data.
A primeira coisa a ser feita é definir no seu arquivo de MetaDados qual campo será utilizado como critério de ordenação e qual será o critério: Ascending ou Descending.
O código em negrito é o que deve ser adicionado no arquivo de Metadados.
<MetadataType(GetType(PROJETO_Metadata))> _
<DisplayColumn("NomeProjeto", "NomeProjeto", False)> _
Partial Public Class PROJETO
No código acima, minha grid será ordenada pelo nome do projeto em ordem crescente (Ascending).
Agora vamos adicionar o código que fará a ordenação da GridView:
No arquivo List.aspx, basta adicionar o seguinte no código no evento Page_Load:
If Not Page.IsPostBack Then
Dim Ordem As String = IIf(table.SortDescending = True, "Descending", "Ascending")
Dim orderBy As String = String.Format("{0} {1}", table.DisplayColumn.SortExpression, Ordem)
GridDataSource.OrderBy = orderBy
End If
Um abraço e até a próxima!!
quinta-feira, 30 de setembro de 2010
sexta-feira, 24 de setembro de 2010
Update Progress & Update Panel Trigger
Fala, galera!!
Segue a solução para quem, como eu, enfrentou problemas ao colocar o Update Progress para funcionar com um update Panel cuja atualização é disparada através de uma trigger.
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<script type="text/javascript">
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);
var postBackElement;
function InitializeRequest(sender, args) {
if (prm.get_isInAsyncPostBack())
args.set_cancel(true);
$get('ctl00_ContentPlaceHolder1_upProgresso').style.display = 'block';
}
function EndRequest(sender, args) {
$get('ctl00_ContentPlaceHolder1_upProgresso').style.display = 'none';
}
</script>
O script deve ser adicionado logo após o controle ScriptManager. Caso contrário, ocorrerá um erro no javascript: "Sys is not defined"
Um abraço e até a próxima!!
Segue a solução para quem, como eu, enfrentou problemas ao colocar o Update Progress para funcionar com um update Panel cuja atualização é disparada através de uma trigger.
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<script type="text/javascript">
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);
var postBackElement;
function InitializeRequest(sender, args) {
if (prm.get_isInAsyncPostBack())
args.set_cancel(true);
$get('ctl00_ContentPlaceHolder1_upProgresso').style.display = 'block';
}
function EndRequest(sender, args) {
$get('ctl00_ContentPlaceHolder1_upProgresso').style.display = 'none';
}
</script>
O script deve ser adicionado logo após o controle ScriptManager. Caso contrário, ocorrerá um erro no javascript: "Sys is not defined"
Um abraço e até a próxima!!
Marcadores:
Trigger,
Update Panel,
Update Progress
terça-feira, 21 de setembro de 2010
Exportando dados para o Excel
Fala, galera!!
Fiquei meio ausente. O tempo anda escasso.
Portanto, farei um post relâmpago para quem precisa, como eu precisei, exportar dados de um gridview para uma planilha excel.
Ai vai...
Private Sub ExportarParaExcel()
Dim util As New util
Dim tw As New StringWriter()
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
Dim frm As HtmlForm = New HtmlForm()
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader("content-disposition", "attachment;filename=Planilha.xls")
Response.Charset = ""
EnableViewState = False
Controls.Add(frm)
frm.Controls.Add(grdDados) 'Aqui você informa o seu controle GridView
frm.RenderControl(hw)
Response.Write(tw.ToString())
Response.End()
End Sub
Bem simples e bem útil.
Um abraço e até a próxima!!
Fiquei meio ausente. O tempo anda escasso.
Portanto, farei um post relâmpago para quem precisa, como eu precisei, exportar dados de um gridview para uma planilha excel.
Ai vai...
Private Sub ExportarParaExcel()
Dim util As New util
Dim tw As New StringWriter()
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
Dim frm As HtmlForm = New HtmlForm()
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader("content-disposition", "attachment;filename=Planilha.xls")
Response.Charset = ""
EnableViewState = False
Controls.Add(frm)
frm.Controls.Add(grdDados) 'Aqui você informa o seu controle GridView
frm.RenderControl(hw)
Response.Write(tw.ToString())
Response.End()
End Sub
Bem simples e bem útil.
Um abraço e até a próxima!!
Assinar:
Postagens (Atom)