You should use ObservableCollection instead of List. Declare SystemInformation as:
public ObservableCollection<HostSystemInformation> SystemInformation { get; private set; }
Then initialize it in constructor:
SystemInformation = new ObservableCollection<HostSystemInformation>();
Finally in AddSystemInformationInIpTable:
SystemInformation.Add(new HostSystemInformation
{
Sno = num++,
strIpAddr = txtIpAddress,
strSystemName = hostname,
strStatus = "connected"
});
You have already declared _HostSystemInformation as ObservableCollection but it's not used anywhere. This is how you should expose collections that change.