Это оказывается более прямым, если вы сначала не $unwind
оригиналы документов. $lookup
может искать прямо из массива «внешних ключей», и результатом будет уже массив, избегая необходимости иметь другие $unwind
и $group
после.
db.getCollection('Products').aggregate([
{ $lookup: {
from:"Offers",
localField:"SupplierOffers",
foreignField:"_id",
as:"Producttypes"
}}
])
При желании, если вы хотите преобразовать Producttypes, чтобы в нем просто было поле offerType, вы можете добавить { $addFields: {Producttypes: '$Producttypes.offeringType' } } }
Вы могли также отфильтровать для ключа в PreTranslateMessage Вашего диалогового окна. Если Вы добираетесь WM_KEYDOWN
для VK_RETURN
, звонить GetFocus
. Если фокус находится на Ваших средствах редактирования, назовите свою обработку для возврата нажатой в средствах редактирования.
Отметьте порядок пунктов в, если полагается на замыкание накоротко, чтобы быть эффективным.
BOOL CMyDialog::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_KEYDOWN &&
pMsg->wParam == VK_RETURN &&
GetFocus() == m_EditControl)
{
// handle return pressed in edit control
return TRUE; // this doesn't need processing anymore
}
return FALSE; // all other cases still need default processing
}
Удостоверьтесь стиль Средств редактирования, ES_WANTRETURN установлен в диалоговом ресурсе для управления