Firstly, don't do it like that - it leave you open to an SQL injection attack. Use parameterized queries instead (See SqlCommand.AddWithValue for details).
Secondly, the problem is your sql command. Try writing it out yourself assumeing txtop.Text is "John":
select User_Name from users where=('John')
Now try making it a legitimate Sql select statement:
SELECT User_Name FROM users WHERE User_Name='John'
(I have capitalised SQL syntax words to make it easier to decipher - worth doing as a general rule).
If you do this as a parameterized query, you won't need the quotes, either...
[edit]Finger trouble: there is no "Q" in "AddWithValue" - OriginalGriff[/edit]