# C1.WPF.C1PropertyPathHelper.CreateSelector

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_WPF_C1PropertyPathHelper_CreateSelector_" data-uid="C1.WPF.C1PropertyPathHelper.CreateSelector*">CreateSelector Method
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_WPF_C1PropertyPathHelper_CreateSelector_" data-uid="C1.WPF.C1PropertyPathHelper.CreateSelector*"></a>
<h4 id="C1_WPF_C1PropertyPathHelper_CreateSelector__2_System_String_" data-uid="C1.WPF.C1PropertyPathHelper.CreateSelector``2(System.String)">CreateSelector&lt;T, X&gt;(string)</h4>
<div class="markdown level1 summary"><p>Creates a Function to evaluate a given property path on a given object.
<example>
For the property path: MyProperty1.MyProperty2
it will return the following function:
i =&gt; i.MyProperty1.MyProperty2
</example></p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public static Func&lt;T, X&gt; CreateSelector&lt;T, X&gt;(string path)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Shared Function CreateSelector(Of T, X)(path As String) As Func(Of T, X)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></td>
      <td><span class="parametername">path</span></td>
      <td><p>The path.</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-2">Func</a>&lt;T, X&gt;</td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><span class="parametername">T</span></td>
      <td><p>Type of the element where the property path will be accessed.</p>
</td>
    </tr>
    <tr>
      <td><span class="parametername">X</span></td>
      <td><p>Type of the result after evaluated the full property path.</p>
</td>
    </tr>
  </tbody>
</table>


<a id="C1_WPF_C1PropertyPathHelper_CreateSelector_" data-uid="C1.WPF.C1PropertyPathHelper.CreateSelector*"></a>
<h4 id="C1_WPF_C1PropertyPathHelper_CreateSelector__1_System_Type_System_String_" data-uid="C1.WPF.C1PropertyPathHelper.CreateSelector``1(System.Type,System.String)">CreateSelector&lt;X&gt;(Type, string)</h4>
<div class="markdown level1 summary"><p>Creates a function that when called execute the path expression over the specified object.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public static Func&lt;object, X&gt; CreateSelector&lt;X&gt;(Type type, string path)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Shared Function CreateSelector(Of X)(type As Type, path As String) As Func(Of Object, X)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.type">Type</a></td>
      <td><span class="parametername">type</span></td>
      <td><p>The type of the objects that will be passed to the resulting function.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.string">string</a></td>
      <td><span class="parametername">path</span></td>
      <td><p>The path that will be evaluated.</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-2">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a>, X&gt;</td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><span class="parametername">X</span></td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 id="C1_WPF_C1PropertyPathHelper_CreateSelector__1_System_Type_System_String__remarks">Remarks</h5>
<div class="markdown level1 remarks"><p>The object type passed in the resulting function must be the same as the specified in this method, otherwise an exception will be thrown.</p>
</div>
</div>
