SQL Join with PropertyID and Name
In this small of a query I wouldn't alias anything.  It doesn't make it any more readable and you don't use those column aliases anywhere else in the query.

Don't do the reporting stuff on the SQL Server.  you can set the title of the column in the datagrid.  Don't do it here, it creates clutter if you try to do it in the SQL.

Whatever you are using to display this data is what you should use to give it a display title.   

Always separate retrieving data from displaying data  it makes it easier to code.



I assume that you have all of your RegionID's Positive so you could change the query from

WHERE RegionID &lt;&gt; '0'


to 

WHERE RegionID &gt; 0


I hope that RegionID is an Integer in which case the ' are not needed because they make it a string.



Something else that I just noticed, must have been an addition when you edited your post. 

WHERE TblA.PropertyID LIKE '%' + @PropertyID + '%'


I always think of an ID field being an integer, and if that is the case then you shouldn't (and CANNOT) use Wildcards or the LIKE operator on that column.  I really don't know how it is running like that. 

the LIKE Operator uses a lot of performance as well, so let's say it works,  why would you want to do this in the first place, if you put in
1 for @PropertyID it will bring back records with a PropertyID of 

1,11,111,1111,12,13,14,15,16,17,18,19,21,31,41,51,61,71,81,91,(100 &lt;= x &lt; 200)... 


if you put in 13 you will get 

13,113, 133,1413,1313,1334,1113,2132,1132, ...


I don't see this as being what you want to functionally happen in this query



You don't need this in the Query

ORDER BY TblA.PropertyID ASC


This should be done in the VB code as well.



This is more of a common coding practice type of thing (nitpick) all of your reserved words should be in all Caps

WHERE, JOIN, INNER, SELECT, LIKE, FROM, ORDER BY, AND, AS, ON