Sdílet prostřednictvím


CUtlProps::OnPropertyChanged

Nazývá se po nastavení vlastnosti zpracování vlastnosti zřetězené.

virtual HRESULT OnPropertyChanged(
   ULONG /* iCurSet */,
   DBPROP* pDBProp 
);

Parametry

  • iCurSet
    Index do pole Sada vlastností; nula, pokud je vlastnost pouze jednu sadu.

  • pDBProp
    ID vlastnosti a nové hodnoty v DBPROP struktury.

Vrácená hodnota

Standard HRESULT.Vrátit výchozí hodnota je S_OK.

Poznámky

Pokud chcete zpracovat zřetězené vlastnosti, jako jsou například záložky nebo aktualizace, jejichž hodnoty jsou závislé na hodnotě této vlastnosti by měly přepsat tuto funkci.

Příklad

V této funkci získává uživatel ID vlastnosti z DBPROP* parametr.Nyní je možné porovnat ID proti vlastnosti řetězce.Pokud je nalezena vlastnost, SetProperties je volána s vlastnost, která bude ve spojení s jinými vlastnost nastavena.V tomto případě získá jeden-li DBPROP_IRowsetLocate, DBPROP_LITERALBOOKMARKS, nebo DBPROP_ORDEREDBOOKMARKS vlastnost, jeden lze nastavit DBPROP_BOOKMARKS vlastnost.

HRESULT OnPropertyChanged(ULONG /*iCurSet*/, DBPROP* pDBProp)
{
   ATLASSERT(pDBProp != NULL);

   DWORD dwPropertyID = pDBProp->dwPropertyID;

   if (dwPropertyID == DBPROP_IRowsetLocate || 
      dwPropertyID == DBPROP_LITERALBOOKMARKS ||
      dwPropertyID == DBPROP_ORDEREDBOOKMARKS)
   {
      CComVariant var = pDBProp->vValue;

      if (var.boolVal == VARIANT_TRUE)
      {
         // Set the bookmarks property as these are chained
         CComVariant bookVar(true);
         CDBPropSet set(DBPROPSET_ROWSET);
         set.AddProperty(DBPROP_BOOKMARKS, bookVar);

         return SetProperties(1, &set);
      }
   }

   return S_OK;
}

Požadavky

Záhlaví: atldb.h

Viz také

Referenční dokumentace

Třída CUtlProps