<p>Suppose I have a dataset with those two immortal tables: Employee &amp; Order <br/>
<strong>Emp</strong> -> ID, Name <br/>
<strong>Ord</strong> -> Something, Anotherthing, EmpID <br/>
And relation <strong>Rel</strong>: Ord (EmpID) -> Emp (ID) <br/></p>

<p>It works great in standard master/detail scenario <br/>
(show employees, follow down the relation, show related orders), <br/>
but what when I wan't to go the opposite way (show Ord table with Emp.Name)? <br/></p>

<p>Something like this:<br/></p>

<pre><code>&lt;stackpanel&gt;   // with datacontext set from code to dataset.tables["ord"]
   &lt;TextBox Text="{Binding Something}"/&gt;
   &lt;TextBox Text="{Binding Anotherthing}"/&gt;
   &lt;TextBox Text="{Binding ???}"/&gt; // that's my problem, how to show related Emp.Name 
&lt;/stackpanel&gt;
</code></pre>

<p>Any ideas? I can create value converter, but if I wan't to use dataset instance which I get from parent module it gets tricky.</p>

Assuming that you are using a strongly-typed DataSet, in order to bind the TextBox to the 'EmpRow.Name' property, you will probably have to expose it as a property on the 'OrdDataTable' class.
Since Visual Studio generates the typed DataSet code with partial classes, you could add the property to the 'OrdDataTable' class this way:
```
```
using System.Data;

public partial class OrdDataTable : DataTable
{
    public string EmpName
    {
        get { return this.EmpRow.Name; }
    }
}
```
```
Then you would be able to bind to the 'EmpName' property of the 'OrdDataTable' object in the data context.