ASP.NET Calendar control

duffy

Power Member
Boas
Estou aqui a implementar um calendário personalizado com dados a partir da bd.
A minha dúvida é com as tooltips, gostava de colocar vários valores no mesmo dia, ou seja, quando vou à bd buscar os dados e para o mesmo dia tenho várias tarefas.
Basicamente era algo semelhante ao calendário do moodle, que quando passamos o rato por cima dos dias seleccionadas, aparecem as tarefas desse dia.
Já pesquisei e não encontrei nada nesse sentido, será que alguém por aqui tem algo?
Estou a trabalhar com c# mas se tiverem algum exemplo em vb.net também não há problema.

Thanks :)
 
Penso que seria interessante se pudesses partilhar a solução encontrada com o resto da comunidade.

Eu sei, quando coloquei a resposta não tinha o código comigo.

Não é bem como o Symbio diz, a melhor solução passou por substituir o dia ou dias em causa por um link e vamos colocar a tooltip do link, depois o resto está no código, mais qualquer coisa é só perguntarem :)


Código:
    protected void Page_Load(object sender, EventArgs e)
    {
        TasksCalendar.Attributes.Add("title", String.Empty);  //limpa a tooltip por defeito do calendário
    }

    protected void DayRender(Object source, DayRenderEventArgs e)
    {
 
       //Efectuar a ligação à bd e preencher o datatable (dt)

        if (dt != null)
        {
            String url = e.SelectUrl;
            e.Cell.Controls.Clear();    //limpar o dia colocado por defeito
            HyperLink link = new HyperLink();     
            link.Text = e.Day.Date.Day.ToString();     //criar o dia como link
            e.Cell.Controls.Add(link);                        //colocar o dia no calendário
            for (int i = 0; i < dt.Rows.Count; i++ ) 
            {
                if(e.Day.Date == DateTime.Parse(dt.Rows[i]["Date"].ToString()))
                {
                    e.Cell.CssClass = "selectedDay";
                    if (link.ToolTip != String.Empty)
                    {
                        link.ToolTip += "\n";
                    }
                    link.ToolTip += "Code: " + dt.Rows[i]["ColumnName"].ToString() + " \n " + "Name: " + dt.Rows[i]["ColumnName"].ToString() + " \n " + "Customer: " + dt.Rows[i]["ColumnName"].ToString() + "\n";
                    
                }
            }
        }
    }
 
Back
Topo