I have a property inside a class that is getting changed by something. The only place I change the value of this code is a line that looks like this:
pushpin.Pos
You can set a conditional breakpoint by setting the bp and then right-click to specify a condition upon which to break at that line.
You can add a 'Watch' to a variable and specify to break anywhere/anytime the value changes.
You need to set a data breakpoint. A data breakpoint will cause the debugger to break when a certain memory address has changed.
More detailed description and instructions how to set a data breakpoint.
If this is a property then you can do this by adding a breakpoint to the set method of the property. Putting the cursor in the set statement and hit F9 will create the break point.
If this is a field then there's no way to watch this directly. Breaking when a field changes a value is a supported operation in C++, known as data break points, but is not supported in the CLR. The best work around is to convert the field to a property temporarily and break on the set statement.
EDIT
Updating based on OP saying it's a 3rd party DLL.
In this case you want to use the Break at Function feature of Visual Studio. The first step is to disable Just My Code.
Next actually set the named break point
You may need to fully qualify the name in order to get it to work