Search code examples
c#asp.nettextboxtimespan

Convert TimeSpan from format "hh:mm:ss" to "hh:mm"


I want to show in a TextBox only hour and minutes

var test = dataRow.Field<TimeSpan>("fstart").ToString();  
//test ="08:00:00"  
var tb = (TextBox) gridViewRow.Cells[2].FindControl("fstart");
tb.Text = test;

how to show only hours and minutes "hh.mm"


Solution

  • You need to convert your data to TimeSpan and then use format:"hh\:mm"

    string test ="08:00:00";
    TimeSpan ts = TimeSpan.Parse(test);
    Console.Write(ts.ToString(@"hh\:mm"));
    

    In your case:

    var test = dataRow.Field<TimeSpan>("fstart").ToString(@"hh\:mm"));
    

    Remember to escape the colon :

    You may see: Custom TimeSpan Format Strings