Jag har en boundcolumn där datafield ibland innehåller väldigt långa texter. Kan man med hjälp av Du kan ju alltid bygga en liten metod som kollar detta åt dig... Okej Det beror lite på hur du visar datan. Hej, Det sista är en vanlig publik metod i din CodeBehind som exempelvis returnerar en string. Japp men hur gör jag för att använda en sådan eval metod här Jaha. Nej det kan du inte göra där. Eval kör du på ASP .Net sidan, om du kör ItemTemplates... Jag använder ingen ItemTemplates utan en BoundColumn och jag kan inte få rätt på IFormatProvider Skapa då en metod för ItemBound evetnet och där hantera datan för den cell som du vill klippa av...DataFormatString
DataFormatString eller något annat göra så att den aldrig visar mer än tio tecken och kanske sätter tre punkter efter typ
Hejsan detta är ett test
blir :
Hejsan detta...Sv: DataFormatString
Där den tar max den lenght du vill ha och sedan lägger till ...
Jag tror inte du kan formatera detta så enkelt genom färdiga saker i .Net. Dock måste jag erkänna att jag inte kollat så mkt på formatsakerna. Du kan även använda IFormatProvider för att bygga en egen liten formathanterare...
Mvh JohanSv: DataFormatString
Men hur får jag tag på värdet då, jag gör ju såhär nu.
Hur menar du att jag ska använda IFormatProvider
dg4.DataField = "Description";Sv: DataFormatString
Kör du ASP .Net eller win forms?
IFormat.... Ärver du i en egen klass och bygger efter dess interface, du har en metod GetFormat har jag för mig, som tar emot ett argument. Här har du troligen din text, sedan utför du formateringen och returnerar den.
string Name = "John Doe";
string NyText = Name.ToString(myFormatProvider);
Du kan göra formateringen på flera sätt, beror då på om du kör Asp .Net eller WinForm.
Ett event triggas för varje databound, om du skapar en metod för detta event så får du varje in varje rad som du då kan behandla. Ex för formatering.
Mvh JohanSv: DataFormatString
Du kan köra ItemDataBound...
Sedan har du en property vid namn DataFormatString men jag vet ej hur du anger din Formatter där, och om det går... Har inte tittat så mkt på just detta.
Du kan även köra:
<%# DataBinder.Eval(Container.DataItem, "MittDataFält") %>
Här kan du kasta in hela denna data i en egen publik metod:
<%# FormattTHisString(DataBinder.Eval(Container.DataItem, "MittDataFält")) %>
Etc...
Mvh JohanSv: DataFormatString
public string Foo(string text)
{
formatt i massor...
return ( nysträng );
}
Mvh JohanSv: DataFormatString
BoundColumn dg4 = new BoundColumn();
dg4.HeaderText = "Beskrivning";
dg4.DataField= "Description";
hur ska jag skriva så att den tar värdet den får från "Foo" istället.Sv: DataFormatString
Om du gör som ovan kan du nog sätta formatstring propertyn till en IFroamtProvider? kolla det. Gissar bara nu, ananrs måste du binda eventet och utföra din formatering där.
Mvh JohanSv: DataFormatString
Sv: DataFormatString
Sök i hjälpen om du inte vet på rak arm hur du skall göra... Måste gå nu.. hej.
Mvh Johan