First of all you need to check whether the DataSet contains any tables returned from database then if the table contains any row or not.
Then we need to check if for the individual columns having values existing or not.
These checks can be added as follows :-
if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
{
if(ds.Tables[0].Rows[0]["ROLE"] != null && !ds.Tables[0].Rows[0].IsNull("ROLE"))
txtRoles.Text = Convert.ToString(ds.Tables[0].Rows[0]["ROLE"]);
if (ds.Tables[0].Rows[0]["UserID"] != null && !ds.Tables[0].Rows[0].IsNull("UserID"))
txtUserID.Text = Convert.ToString(ds.Tables[0].Rows[0]["UserID"]);
if (ds.Tables[0].Rows[0]["EMPLOYEE_NAME"] != null && !ds.Tables[0].Rows[0].IsNull("EMPLOYEE_NAME"))
txtName.Text = Convert.ToString(ds.Tables[0].Rows[0]["EMPLOYEE_NAME"]);
}
Hope this example will be useful to avoid the error you are getting here. Then debugging will help you to check where it is failing to satisfying the conditions to solve it.