title: Knockout custom binding not updating
body: <p>Please check what I am doing wrong.</p>
  
  <p>The update part of my custom bindinghandler does not executes when I create a control in javascript. I have an Add function that create a row in a table. Controls that are bound to the custom binding does executes the update part but not controls that are subsequently added. </p>
  
  <p>HTML</p>
  
  <pre><code>&lt;div id="collapse-programHead" class="panel-collapse collapse"&gt;
              &lt;div class="panel-body"&gt;
                  &lt;table class="cv"&gt;
                       &lt;thead&gt;
                          &lt;tr&gt;
                              &lt;th&gt;Programme&lt;/th&gt;
                              &lt;th&gt;Core Module Count&lt;/th&gt;
                              &lt;th&gt;Core SAQA Credit&lt;/th&gt;
                              &lt;th&gt;Elective Module Count&lt;/th&gt;
                              &lt;th&gt;Elective SAQA Credit&lt;/th&gt;
                              &lt;th&gt;Credit&lt;/th&gt;
                          &lt;/tr&gt;
                      &lt;/thead&gt;
                      &lt;tbody data-bind="foreach: ProgrammeHead"&gt;
                          &lt;!-- ko if: isActive --&gt;
                          &lt;tr&gt;
                              &lt;td&gt;&lt;select data-bind="options: programmes, optionsText: 'Programme', value: ProgrammeID, optionsValue:'ProgrammeID', optionsCaption:''"&gt;&lt;/select&gt;&lt;/td&gt;
                              &lt;td&gt;&lt;input type="text" readonly="true" data-bind="value:ModuleCount, offeringCount:$root.programmeOfferingCount"/&gt;&lt;/td&gt;
  
                              &lt;td&gt;&lt;input type="text"/&gt;&lt;/td&gt;
                              &lt;td&gt;&lt;input type="text"/&gt;&lt;/td&gt;
                              &lt;td&gt;&lt;input type="text"/&gt;&lt;/td&gt;
                              &lt;td&gt;&lt;input type="text" data-bind="value: Credit"/&gt;&lt;/td&gt;
                              &lt;td class="tinyTD"&gt;&lt;a class="removeRow" id="ProgrammeHead" title="Delete item" href="javascript:void(0)"&gt;&lt;/a&gt;&lt;/td&gt;
                              &lt;td class="hideTD"&gt;&lt;input type="hidden" data-bind="value: CVId" /&gt;&lt;/td&gt;
                              &lt;td class="hideTD"&gt;&lt;input type="hidden" data-bind="value: ProgrammeID" /&gt;&lt;/td&gt;
                              &lt;td class="hideTD"&gt;&lt;input type="hidden" data-bind="value: ProgrammeOfferingID" /&gt;&lt;/td&gt;
                              &lt;td class="hideTD"&gt;&lt;input type="hidden" data-bind="value: ManagementLoadID" /&gt;&lt;/td&gt;
                          &lt;/tr&gt;
                          &lt;!-- /ko --&gt;
                      &lt;/tbody&gt;
                  &lt;/table&gt;
                  &lt;a title="Add row" id="a2" href="javascript:void(0)" data-bind="click: addRow.bind($data, 'programHead')"&gt;&lt;label&gt;Add row&lt;/label&gt;&lt;/a&gt;
              &lt;/div&gt;
          &lt;/div&gt;
  </code></pre>
  
  <p>ko.bandingHandler</p>
  
  <pre><code>ko.bindingHandlers.offeringCount = {
          init: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
              return { controlsDescendantBindings: true };
          },
          update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
              var value = ko.unwrap(valueAccessor)
              var id = ko.unwrap(bindingContext.$data.ProgrammeID);
  
              var item = programmes().filter(function (i) {
                  return i.ProgrammeID() == id;
              })
              if (item.length &gt; 0) {
                  var count = ko.unwrap(item[0].ProgrammeOfferingCount);
                  bindingContext.$data.ModuleCount(count);
              }
          }
      };
  </code></pre>
  
  <p>ProgrammeHead Add</p>
  
  <pre><code>self.ProgrammeHead.push({ 'ManagementLoadID': '', 'CVId': '', 'ModuleCount': count, 'ProgrammeID': '', 'ProgrammeOfferingID': '', 'Credit': '', 'isActive': active });
  </code></pre>